Flutter image_picker video gallery OSError: Операция не разрешена [Errno 1] IOS 13 - PullRequest
0 голосов
/ 19 октября 2019

Я использую flutter image_picker, и почти все хорошо, за исключением того, что когда я пытаюсь что-то сделать с файлом, сгенерированным на pickVideo из галереи (только на реальном устройстве IOS 13), выдается ошибка:

OSError: Операция не разрешена [Errno 1].

Некоторые странности в том, что этот видеофайл может воспроизводиться с video_player, и я могу хорошо работать с файлом камеры и файлом выбора изображения, созданным с помощью image_picker, но файл видео галереи можетне делайте ничего, кроме игры с video_player.

Например, попытка получить размер файла или скопировать его в другой файл не удалась, пример кода:

var videoFile = await ImagePicker.pickVideo(source: ImageSource.gallery);

print("File path........${videoFile.path}");
print("...................Size: ${await videoFile.length()}");

Directory appDocDir = await getApplicationDocumentsDirectory();
String appDocPath = appDocDir.path;

File newfile = videoFile.copy("${appDocPath}/video.MOV");

Я видел, что все разрешения хорошие, в основном NSPhotoLibraryUsageDescription на Info.plist, но это не работает.

Мне нужно сказать, что на андроиде все работает нормально.

Надеюсь, кто-нибудь сможет мне помочь.

Ответы [ 2 ]

0 голосов
/ 21 октября 2019

Я решаю свою проблему, используя другой вызов библиотеки file_picker, я думаю, что image_piker не работает хорошо с IOS 13, им нужно обновить его.

0 голосов
/ 19 октября 2019

Пожалуйста, ознакомьтесь с документацией Image_picker, где говорится, что для настройки ios:

Добавьте следующие ключи в ваш файл Info.plist, расположенный в /ios/Runner/Info.plist:

NSPhotoLibraryUsageDescription 
NSCameraUsageDescription 
NSMicrophoneUsageDescription 

https://pub.dev/packages/image_picker

...