我正在使用flutter image_picker,几乎所有的东西都很好,除了当我尝试对来自图库(仅在IOS 13真实设备上)的pickVideo上生成的文件进行某些处理时,它会给出错误消息:
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
,但它不起作用。
我需要说的是,在android上一切正常。
我希望有人能帮助我。
答案 0 :(得分:0)
请仔细阅读Image_picker的文档,其中包含有关ios设置的信息:
将以下键添加到/ios/Runner/Info.plist中的Info.plist文件中:
NSPhotoLibraryUsageDescription
NSCameraUsageDescription
NSMicrophoneUsageDescription
答案 1 :(得分:0)
我使用另一个库调用file_picker解决了我的问题,由于IOS 13,我认为image_piker不能很好地工作,他们需要对其进行升级。