(1)打开后台授权信息控制台:
Taro.openSetting({
success: function (res) {
console.log(res.authSetting)
}
})
(2)获取用户的授权信息
Taro.getSetting({
success: function (res) {
res.authSetting['xx']
}
})
(3)弹出窗口进行授权操作
多在(2)进行判断是否授权后,再进行弹框操作
Taro.authorize({
scope: 'scope.record',
success: function () {
成功授权后操作
}
})
(4)用户点击拒绝授权后,再次点击不再弹出窗口,引导用户再次授权
调用Taro.openSetting让用户自主授权
授权信息参数:
scope.address 是否授权通讯地址,对应接口 wx.chooseAddress
scope.camera 是否授权摄像头,对应[camera](https://developers.weixin.qq.com/miniprogram/dev/component/camera.html) 组件
scope.invoice 是否授权获取发票,对应接口 wx.chooseInvoice
scope.invoiceTitle 是否授权发票抬头,对应接口 wx.chooseInvoiceTitle
scope.record 是否授权录音功能,对应接口 wx.startRecord
scope.userInfo 是否授权用户信息,对应接口 wx.getUserInfo
scope.userLocation 是否授权地理位置,对应接口 wx.getLocation, wx.chooseLocation
scope.werun 是否授权微信运动步数,对应接口 wx.getWeRunData
scope.writePhotosAlbum 是否授权保存到相册 wx.saveImageToPhotosAlbum, wx.saveVideoToPhotosAlbum
代码示例:
Taro.getSetting({
success(res) {
if (!res.authSetting['scope.userLocation']) {
Taro.authorize({
scope: 'scope.userLocation',
success() {
...
},
fail() {
// 用户点击不允许引导重新获取授权
}
})
}