taro 获取用户权限以及弹窗提醒

    科技2022-07-20  103

    (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() { // 用户点击不允许引导重新获取授权 } }) }
    Processed: 0.009, SQL: 8