如何解决Flutter imagepicker.pickvideo返回jpg
我正在使用它来返回视频文件,但是我得到了.jpg
Future<File> getVideo() async {
var video = await ImagePicker.pickVideo(
source: ImageSource.gallery);
return video;
}
我想ImagePicker.pickVideo()
返回视频文件而不是.jpg文件,以便可以将此文件上传到Firebase,该如何实现?
解决方法
我假设您正在使用该软件包: 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云端硬盘或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类型。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。