保存图片到相册

saveToPhone() {
    this.getCode().then(res => {
      const Imgurl = res //图片地址
      const url = wx.env.USER_DATA_PATH + "/" + new Date().getTime().toString() + Imgurl.slice(Imgurl.lastIndexOf('.'))
      console.log(url)
      wx.showLoading({
        title: '保存中...'
      })
      wx.downloadFile({ //下载文件资源到本地
        url: Imgurl,
        filePath: url,
        success: function (res) {
          console.log(res);
          //图片保存到本地

          if (res.statusCode === 200) {
            wx.saveImageToPhotosAlbum({
              filePath: url,
              success: function (data) {
                wx.hideLoading()
                wx.showToast({
                  title: '保存成功',
                  icon: 'success',
                  duration: 2000
                })

                let fileMgr = wx.getFileSystemManager()
                fileMgr.unlink({
                  filePath: url,
                  success: () => {
                    console.log('删除缓存成功!')
                  }
                })
              },
              fail: function (err) {
                if (err.errMsg === "saveImageToPhotosAlbum:fail auth deny" || err.errMsg === "saveImageToPhotosAlbum:fail:auth denied") {
                  console.log("当初用户拒绝,再次发起授权")
                  wx.showModal({
                    title: '提示',
                    content: '需要您授权保存相册',
                    showCancel: false,
                    success: () => {
                      wx.openSetting({
                        success(settingdata) {
                          console.log("settingdata", settingdata)
                          if (settingdata.authSetting['scope.writePhotosAlbum']) {
                            wx.showModal({
                              title: '提示',
                              content: '获取权限成功,再次点击图片即可保存',
                              showCancel: false,
                            })
                          } else {
                            wx.showModal({
                              title: '提示',
                              content: '获取权限失败,将无法保存到相册哦~',
                              showCancel: false,
                            })
                          }
                        },
                        fail(failData) {
                          console.log("failData", failData)
                        },
                        complete(finishData) {
                          console.log("finishData", finishData)
                        }
                      })
                    }
                  })
                }
              },
              complete(res) {
                console.log(res);
                wx.hideLoading()
              }
            })
          }

        }
      })
    })
  },
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容