wx.saveImageToPhotosAlbum 保存base64格式图片
发布于 5 年前 作者 guiyingqian 11083 次浏览 来自 问答

您好,wx.saveImageToPhotosAlbum 这个接口可不可以保存base64 格式的图片?后端返回来的是base64 格式的图片

3 回复

楼上正解。

不过准确来说,你需要先把base64格式的字符串转成ArrayBuffer,然后再调用writeFile把这个ArrayBuffer写入到文件目录里。

亲,可以帮我看下吗,看了你的代码 我这样写了之后,工具上保存图片可以成功,但真机调试手机上保存图片为啥一直是失败呢?

//保存图片

saveImage: function() {

const fileManager = wx.getFileSystemManager()

console.log(this.data.codeSrc)

fileManager.writeFile({

filePath: wx.env.USER_DATA_PATH + ‘/test.png’,

data: this.data.codeSrc,

encoding: ‘base64’,

success: res => {

console.log(‘writeFile成功res’, res)

console.log(‘了路径’, wx.env.USER_DATA_PATH + ‘/test.png’)

this.setData({

imageUrl: wx.env.USER_DATA_PATH + ‘/test.png’,

})

wx.saveImageToPhotosAlbum({

filePath: wx.env.USER_DATA_PATH + ‘/test.png’,

success: res => {

wx.showToast({

title: ‘保存成功’

})

console.log(‘saveImageToPhotosAlbum成功res’, res)

},

fail: err => {

console.log(‘saveImageToPhotosAlbum失败’, err)

}

})

},

fail: err => {

console.log(‘writeFile失败’, err)

}

})

},

不行,不过你可以writeFile先存一下,再save到相册

回到顶部