Форматирование медиахранилища
Используйте formatStorage, чтобы удалить все фотографии, видео и аудиозаписи с подключённого устройства. API вызывает существующую операцию удаления всех медиафайлов, а не отдельную команду форматирования файловой системы.
:::danger Необратимая операция
Все медиафайлы устройства будут удалены, и SDK не предоставляет восстановление. Перед запуском получите явное подтверждение пользователя.
:::
Предварительные условия
- Дождитесь подключения и готовности устройства.
- Остановите запись и завершите либо отмените активный импорт медиа.
- Запретите повторный запуск на время операции.
Реализация с помощью AI
Разработка с AI
Реализуйте этот сценарий с AI
Используйте официальный навык «Форматирование хранилища AIBuds» и адаптируйте сценарий к приложению.
Прочитайте и выполните инструкции https://docs-aibuds.github.io/ru/skills/implement-aibuds-format-storage. Используйте этот навык, чтобы реализовать «Форматирование хранилища AIBuds» в данном iOS-проекте и проверить результат.Поведение API
Обработчик завершения сообщает, принят ли базовый запрос на удаление всех файлов. Обновлённые счётчики медиа и сведения о хранилище не возвращаются.
Пример использования
- Swift
- Objective-C
import AIBuds
func formatMediaStorage(on device: DeviceConvertible) {
guard let device = device as? DeviceCommonAPI else {
print("This device does not support common operations")
return
}
device.formatStorage { success, error in
DispatchQueue.main.async {
if success {
print("All device media was deleted")
} else {
print("Delete failed: \(error?.localizedDescription ?? "Unknown error")")
}
}
}
}#import <AIBuds/AIBuds-Swift.h>
- (void)formatMediaStorageOnDevice:(id<AIBudsDeviceConvertible>)device {
if (![device conformsToProtocol:@protocol(AIBudsDeviceCommonAPI)]) {
NSLog(@"This device does not support common operations");
return;
}
[(id<AIBudsDeviceCommonAPI>)device
formatStorageWithCompletion:^(BOOL success, NSError *_Nullable error) {
dispatch_async(dispatch_get_main_queue(), ^{
if (success) {
NSLog(@"All device media was deleted");
} else {
NSLog(@"Delete failed: %@",
error.localizedDescription ?: @"Unknown error");
}
});
}];
}Обработка результата
- После успеха обновите интерфейс через запрос количества медиа и запрос хранилища.
- При ошибке сохраните её для диагностики и разрешайте повтор только после завершения текущего запроса.
- Если устройство отключилось до завершения, считайте результат неопределённым до повторного запроса состояния.