cordova实现生存视频到相册功能
亲测可用*(支持安卓,ios; 目前看来ios14都是可以的;没有兼容问题;) *
需要使用到插件
1、文件系统插件 https://github.com/apache/cordova-plugin-file-transfer
2、 cordova-plugin-add-swift-support@2.0.2
3、cordova-plugin-photo-library(有问题可以去GitHub查察 issues https://github.com/terikon/cordova-plugin-photo-library)
1)三个插件都需安装,可依次安装;
2)安装插件 cordova plugin add xxx (最好名称安装,名称安装不乐成在实验url, 比方 cordova plugin add https://github.com/nilebma/cordova-plugin-photo-library.git;如果再不可 可查察问题 实验–force强制安装)
3)安装之后可以查察是否安装乐成 cordova plugins list
完整代码
- /** url: 视频源地址* album: 视频名称* success:乐成回调* error: 失败回调* library: 请求相册权限失败回调*/function saveVideoToPhotoLibrary(url, album, success, error, library) { let fileURL = cordova.file.dataDirectory + album + '.mp4'; // 可改为指定路径 let fileTransfer = new FileTransfer(); let uri = encodeURI(url); fileTransfer.download(uri,fileURL, (entry) => { cordova.plugins.photoLibrary.requestAuthorization(() => { // User gave us permission to his library, retry reading it! cordova.plugins.photoLibrary.saveVideo(entry.toURL(), album, success, error); }, library, { read: true, write: true }); }, error);}
复制代码 总结 :
下载图片只需要 cordova.plugins.photoLibrary.saveImage 即可,但是下载视频需要先生存文件到本地,才华生存到相册:
所以需要先fileTransfer.download到本地,然后才华生存到相册cordova.plugins.photoLibrary.saveVideo;
而且 iOS 生存视频对格式有要求,提供的视频不能是.webm。使用.mov或.mp4。
在测试时,xcode大概会遇到这个报错 SWIFT_VERSION ‘3.0’ is unsupported, supported versions are: 4.0, 4.2, 5.0.
管理方法:
1.Xcode升级到最新版(在App Store中更新)
2.在Xcode的黄色告诫栏(若有)点击-BulidSetting-搜swift-Swift Language Version 改为支持
3.把项目中的一些SwiftLanguage Version 修改
现在大概部门安卓下载到相册,视频名称大概会改变。如果严格的话大概会需要你自己在钻研一下,加油!
提示:遇到问题,你可以留言我大概去GitHub查察issues;
参考文章:(你也可以去看看哦)
1、https://zhuanlan.zhihu.com/p/64729747
2、https://github.com/terikon/cordova-plugin-photo-library
3、https://www.jianshu.com/p/3fffcc4d033c?utm_campaign=haruki&utm_content=note&utm_medium=reader_share&utm_source=weixin
来源:https://blog.csdn.net/qq_43148113/article/details/110955041
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |