前几天在写业务代码的时候,需要保存视频到系统相册里面,但是呢,在苹果手机里面怎么调用点击事件都是保存不到系统相册,能download但是无法保存,于是令我非常头疼。
例如:代码片段
let filepath = wx.env.USER_DATA_PATH + '/' + new Date().valueOf() + '.mp4'
wx.downloadFile({
url: that.data.action.video, // 下载视频路径
filePath: filepath,
header: {
'content-type': 'application/json'
},
success: res => {
console.log("保存视频",res);
var url = res.filePath
wx.saveVideoToPhotosAlbum({
filePath: url,
success(res) {
console.log(res);
},
fail: error => {
console.log("保存失败原因",error);
wx.showToast({
title: '视频保存失败',
icon: 'none'
})
}
})
},
fail: error => {
console.log(error)
wx.showToast({
title: '视频太大无法保存',
icon: 'none'
})
}
})
出现错误:
后来,发现是视频格式的问题,平时都是上传后台的视频格式都是MP4,我将原本视频文件为MP4
格式通过ffmpeg转化工具转成.mov格式再上传到内容管理后台,苹果手机就能正常下载了,你们
遇到类似问题也可以试一试这个方法,到时会出一期如何利用FFmpeg转格式(免费的工具)