fengrui99 发表于 2019-11-27 13:09

【转】uni-app将uni.downloadFile媒体下载保存到相册

原文来自:https://www.frbkw.com/2079/

看标题,大家就知道了,上次发布的文章把我们uni.downloadFile和uni.saveFile文件保存到手机永久储存,文章末尾也提到了,如果是媒体文件那么我们就保存到相册,是可以直接调用的。如果是自定义文件夹就要调用5+ 的api咯,虽然我也不会哈哈,如果大家看到上次的文章应该就不难了,只是多了一个uni.saveImageToPhotosAlbum




前提引导(建议先看上个文章:uni-app下载文件永久保存uni.downloadFile和uni.saveFile)


好像自动会给相册权限哈
官方语法
success: function (res) {
      uni.saveImageToPhotosAlbum({
            filePath: res.tempFilePaths,
            success: function () {
                console.log('save success');
            }
      });
    }

3.结合下载
上文说过,我们uni.downloadFile有一个tempFilePath是临时路径的,所以我们将tempFilePath给filePath就好了写一个按钮
<button class="mini-btn in-xz" type="default" size="mini" @tap="xiazai">下载</button>

触发的函数
methods: {
      onxiazai() {
                const downloadTask = uni.downloadFile({
                        url: 'https://cloud.video.taobao.com//play/u/2384606604/p/2/e/6/t/1/237850440299.mp4',
                        success: (res) => {
                              if (res.statusCode === 200) {
                                        uni.showToast({
                                                title: "视频连接正确",
                                                icon: "none"
                                        });
                                        uni.saveImageToPhotosAlbum({
                                                filePath: res.tempFilePath,
                                                      success: function() {
                                                                uni.showToast({
                                                                        title: "保存成功",
                                                                        icon: "none"
                                                      });
                                                },
                                                fail: function() {
                                                      uni.showToast({
                                                                title: "保存失败,请稍后重试",
                                                                icon: "none"
                                                      });
                                                }
                                        });
                              }
                        }
                });
                              
                downloadTask.onProgressUpdate((res) => {
                        console.log('下载进度' + res.progress);
                        console.log('已经下载的数据长度' + res.totalBytesWritten);
                        console.log('预期需要下载的数据总长度' + res.totalBytesExpectedToWrite);
                });
      }
}
页: [1]
查看完整版本: 【转】uni-app将uni.downloadFile媒体下载保存到相册