在微信小程序中,做分享朋友圈,保存图片视频到相册,需要授权,会经常遇到。有时用户误操作,第一次拒绝授权弹框后,微信会认为用户拒绝该授权意愿并且不会再次调起授权弹框,这是该怎么办呢?
1、授权情况分析
用户第一次使用,弹出授权
用户已经授权,可进行保存操作
用户已经拒绝,需要调起授权
2、代码实现
wx.getSetting({
success(res) {
const { authSetting } = res
wx.openSetting()
//判断是否已经授权
if (authSetting['scope.writePhotosAlbum']) {
//已经授权,可以进行保存
save()
} else if (!authSetting.hasOwnProperty("scope.writePhotosAlbum")) {
//用户第一次使用,调起授权
wx.authorize({
scope: 'scope.writePhotosAlbum',
success: save,
})
} else {
//已经拒绝授权,去到设置页面授权
wx.openSetting({})
}
}
})