- 首页需要通过 wx.getSetting 先查询一下用户是否授权了写入相册权限;
- 其次对于网络图片,可调用wx.downloadFile下载文件资源到本地;
- 然后非网络图片,可以调用wx.getImageInfo(Object object)获取图片信息;
- 最后调用wx.saveImageToPhotosAlbum,保存图片到系统相册。
1.wxml代码
长按保存bindlongtap方法
<image src="{{hosts}}/images/phonePage.png" class="img" bindlongtap='saveImg'></image>2.js代码
/****长按保存图片 */ saveImg: function () { let that=this wx.getSetting({ success(res) { //未授权 先授权 然后保存 if (!res.authSetting['scope.writePhotosAlbum']) { wx.authorize({ scope: 'scope.writePhotosAlbum', success(re) { that.saveToBlum(); } }) }else{ //已授 直接调用保存到相册方法 that.saveToBlum(); } } }) }, //保存到相册方法 saveToBlum:function(){ let imgUrl = '非网络图片'; wx.getImageInfo({ src: imgUrl, success: function (ret) { var path = ret.path; wx.saveImageToPhotosAlbum({ filePath: path, success(result) { wx.showToast({ title: '保存成功', icon: 'success' }) }, }) } }) }, //保存网络图片到相册方法 saveToBlum:function(){ wx.downloadFile({ url: '网络图片地址', success: function (res) { wx.saveImageToPhotosAlbum({ filePath: res.tempFilePath, success(result) { wx.showToast({ title: '保存成功', icon: 'success' }) } }) } }) },













