收藏
回答

为什么调用saveImageToPhotosAlbum保存图片总是失败呢?


报错:{errMsg: "saveImageToPhotosAlbum:fail get file data fail"}

代码:

 // 下载图片
  downloadImage() {
    const { processedImagePath } = this.data;
    console.log(processedImagePath)
    if (!processedImagePath) return;


    wx.downloadFile({
      url: processedImagePath,
      success: res => {
        wx.saveImageToPhotosAlbum({
          filePath: res.tempFilePath,
          success() {
            wx.showToast({ title: '保存成功' });
          },
          fail(err) {
            console.log('saveImageToPhotosAlbum.', err)
          }
        });
      },
      fail: err => {
        console.log('downloadFile fail.', err)
      }
    });
  },

https://developers.weixin.qq.com/s/nvMY0lmJ79X8

最后一次编辑于  01-21
回答关注问题邀请回答
收藏

4 个回答

  • 社区技术运营专员--Demons
    社区技术运营专员--Demons
    01-17

    开发工具项目设置不要勾选不校验域名看看。


    01-17
    有用
    回复 1
    • 空^_^杯
      空^_^杯
      发表于移动端
      01-17
      没有勾选
      01-17
      回复
  • Jianbo
    Jianbo
    01-17

    downloadFile合法域名配置好了没 ?

    01-17
    有用
    回复 1
    • 空^_^杯
      空^_^杯
      发表于移动端
      01-17
      配置了的。下载没报错,但是保存时报错了
      01-17
      回复
  • showms
    showms
    01-17

    能复现问题的代码发出来看下

    https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    01-17
    有用
    回复 2
  • 星辰
    星辰
    01-17

    1,后台开发管理里面配置下域名

    2,看看小程序是否有保存图片的权限 一般首次保存会弹出授权提示 拒绝了无法保存需要再右上角三个点中打开

    01-17
    有用
    回复 5
    • 空^_^杯
      空^_^杯
      发表于移动端
      01-17
      配置了域名,也添加了隐私。在本地开发环境可以保存,但是真机上不能。
      01-17
      回复
    • 后生
      后生
      01-17回复空^_^杯
      真机打开调试模式了没?
      01-17
      回复
    • 星辰
      星辰
      01-17回复空^_^杯
      真机调试下看看或者发个代码段  正常这两个配置了 就不会有这个情况
      01-17
      回复
    • 空^_^杯
      空^_^杯
      01-21回复星辰
      代码片段:https://developers.weixin.qq.com/s/nvMY0lmJ79X8
      01-21
      回复
    • 星辰
      星辰
      01-23回复空^_^杯
      downloadImage() {
          const { processedImagePath } = this.data;
          console.log(processedImagePath)
          if (!processedImagePath) return;
          wx.saveImageToPhotosAlbum({
            filePath: processedImagePath,
            success() {
              wx.showToast({ title: '保存成功' });
            },
            fail(err) {
              console.log('saveImageToPhotosAlbum.', err)
            }
          });
        },不用写wx.downloadFile()就行了
      01-23
      回复
登录 后发表内容