小程序保存图片到手机相册

首先,需要用户授权确认保存图片到手机,调用

 wx.authorize({
    scope: 'scope.writePhotosAlbum',
    success() {
    }
 })

获取用户权限。这里需要注意,一旦用户取消授权,那么弹窗这里无法再次弹出授权框,除非清除掉缓存。我们在这里可以做一个提示,提示用户在取消授权后可在【关于】-【设置】重新授权。如下

接下来绑定图片的长按事件

<view class="my" wx:if="{{check_status==2}}" style="height:{{h}}px">
	<image catchtap="saveImg" bindlongtap="save" data-src="{{erweima}}" src="{{erweima}}"></image>
	<view class="txt">提示:长按图片可保存到相册(取消授权后可在右上角【关于】-【设置】中重新授权)</view>
</view>

js如下

  save(e) {
    wx.showModal({
      title: '提示',
      content: '确定要保存这张图片吗?',
      success: res => {
        if (res.confirm) {
          console.log('用户点击确定')
          wx.getImageInfo({
            src: e.currentTarget.dataset.src,
            success: re => {
              var path = re.path;
              wx.saveImageToPhotosAlbum({
                filePath: path,
                success: r => {
                  console.log('图片已保存');
                  wx.showToast({
                    title: '图片已保存',
                    icon: 'success'
                  })
                },
                fail: fail => {
                  console.error('保存失败');
                }
              })
            }
          });
        } else if (res.cancel) {
          wx.showToast({
            title: '取消保存',
            icon: 'none'
          })
        }
      }
    })
  }

打开手机相册,图片就已经保存好啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值