微信小程序实现将图片保存到手机相册 您所在的位置:网站首页 小程序如何下载视频到相册 微信小程序实现将图片保存到手机相册

微信小程序实现将图片保存到手机相册

2023-10-22 10:54| 来源: 网络整理| 查看: 265

实现思路:

首先我们需要调用 wx.downloadFile 方法下载文件资源到本地,然后利用 wx.saveImageToPhotosAlbum 方法保存图片到系统相册,需要注意的是这样写很可能会因为没有权限而导致下载不了图片,所以我们最后还需要给接口一个调用失败的回调函数,以此来获取权限,最后这个小功能就实现啦。

源码如下:

点击下载图片 const app = getApp(); //获取app实例 Page({ data: { modalType: false, //弹框默认不显示 imgUrl: "https://s1.ax1x.com/2022/04/11/LV4c4J.jpg", //模拟图片 }, // 点击下载图片事件 downloadImg() { wx.showLoading({ title: '加载中...' }); //wx.downloadFile方法:下载文件资源到本地 wx.downloadFile({ url: this.data.imgUrl, //图片地址 success: function (res) { //wx.saveImageToPhotosAlbum方法:保存图片到系统相册 wx.saveImageToPhotosAlbum({ filePath: res.tempFilePath, //图片文件路径 success: function (data) { wx.hideLoading(); //隐藏 loading 提示框 wx.showModal({ title: '提示', content: '保存成功', modalType: false, }) }, // 接口调用失败的回调函数 fail: function (err) { if (err.errMsg === "saveImageToPhotosAlbum:fail:auth denied" || err.errMsg === "saveImageToPhotosAlbum:fail auth deny" || err.errMsg === "saveImageToPhotosAlbum:fail authorize no response") { wx.showModal({ title: '提示', content: '需要您授权保存相册', modalType: false, success: modalSuccess => { wx.openSetting({ success(settingdata) { console.log("settingdata", settingdata) if (settingdata.authSetting['scope.writePhotosAlbum']) { wx.showModal({ title: '提示', content: '获取权限成功,再次点击图片即可保存', modalType: false, }) } else { wx.showModal({ title: '提示', content: '获取权限失败,将无法保存到相册哦~', modalType: false, }) } }, fail(failData) { console.log("failData", failData) }, complete(finishData) { console.log("finishData", finishData) } }) } }) } }, complete(res) { wx.hideLoading(); //隐藏 loading 提示框 } }) } }) } })



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有