saveVideoToPhotosAlbum保存视频到本地相册,视频大小0kb,是一个空文件
发布于 6 年前 作者 xiuyingyuan 8509 次浏览 来自 官方Issues

https://developers.weixin.qq.com/miniprogram/dev/api/media/video/wx.saveVideoToPhotosAlbum.html

            // 微信小程序下载视频

            wxVideoQuery() {

                let fileName = new Date().valueOf();

                wx.downloadFile({

                    url: this.afterLink,

                    filePath: wx.env.USER_DATA_PATH + ‘/’ + fileName + ‘.mp4’,

                    success: res => {

                        uni.showLoading({

                            title:‘正在下载…’

                        })

                        console.log(‘下载’, res)

                        let filePath = res.filePath; //下载到本地获取临时路径

                        wx.saveVideoToPhotosAlbum({ //保存到相册

                            filePath,

                            success: file => {

                                uni.hideLoading()

                                wx.showToast({

                                    title: ‘保存成功’,

                                    icon: ‘success’,

                                    duration: 3000

                                })

                                let fileMgr = wx.getFileSystemManager();

                                fileMgr.unlink({ //删除临时文件

                                    filePath: wx.env.USER_DATA_PATH + ‘/’ + fileName +

                                        ‘.mp4’,

                                })

                            },

                            fail: err => {

                                console.log(‘保存失败’, err)

                                if (err.errMsg == ‘saveVideoToPhotosAlbum:fail auth deny’) {

                                    wx.showModal({

                                        title: ‘提示’,

                                        content: ‘需要您授权保存相册’,

                                        showCancel: false,

                                        success: modalSuccess => {

                                            wx.openSetting({

                                                success(settingdata) {

                                                    if (settingdata

                                                        .authSetting[

                                                            ‘scope.writePhotosAlbum’

                                                        ]) {

                                                        console.log(

                                                            ‘获取权限成功,请再次点击保存!’

                                                        )

                                                    } else {

                                                        console.log(

                                                            ‘获取权限失败,下载视频无法正常使用’

                                                        )

                                                    }

                                                }

                                            })

                                        }

                                    })

                                }

                            }

                        })

                    }

                })

            },

2 回复

问题已解决,后台返回的视频链接有问题。

  console.log(‘下载’, res)这里的数据打印出来是什么, wx.downloadFile这个API里面加个header:{‘content-type’: 'video/mp4’}试试,我之前用这个API不加文件header头,下载不下来

回到顶部