我假设您正在使用该软件包:
https://pub.dev/packages/image_picker
pickVideo() 方法已被弃用,您需要将这些 API 替换为 getVideo()
正如存储库文档所解释的:
https://github.com/flutter/plugins/tree/master/packages/image_picker/image_picker
这样写:
final _picker = ImagePicker();
PickedFile video = await _picker.getVideo(...)
但是我建议使用这个包作为替代方案:
https://pub.dev/packages/flutter_document_picker
此包将允许您选择设备上的所有视频,包括从用户的 Google Drive 或 iCloud 提供商获取的视频。在这种情况下写这个:
FlutterDocumentPickerParams params = FlutterDocumentPickerParams(
allowedUtiTypes: [
'public.video',
'public.mpeg',
'public.mpeg-4-audio',
'com.apple.protected-mpeg-4-audio'
],
allowedMimeTypes: [
'video/mpeg',
'video/x-flv',
'video/mp4',
'application/x-mpegURL',
'video/quicktime',
'video/x-msvideo',
'video/x-ms-wmv',
'video/ogg',
'video/mp2t',
'video/3gpp'
],
invalidFileNameSymbols: ['/'],
);
return await FlutterDocumentPicker.openDocument(params: params);
您需要确保 iOS 和 Android 上视频的 Mimes 和 Uti 类型设置正确。