小程序-用戶拒絕受權後提示用戶手動受權

使用API

Page({
  onShow: function () {
    this.isAuto()
    if (this.isUserOpen) {
      // 用戶手動打開的相機權限,返回培訓計劃。
      wx.reLaunch({
        url: '/pages/home/home',
      })
    }
  },
  isUserOpen: false,// 用戶是否手動打開相機權限
  isAuto(){
    var that =this;
    // 獲取用戶是否開啓用戶受權相機
    wx.getSetting({
      success(res) {
        // 若是沒有則獲取受權
        if (!res.authSetting['scope.camera']) {
          wx.authorize({
            scope: 'scope.camera',
            success() {
              console.log('受權成功')
            },
            fail() {
              console.log('受權失敗')
              wx.showModal({
                  title: '提示',
                  content: '若點擊不受權,將沒法使用學習功能',
                  cancelText:'不受權',
                  cancelColor:'#999',
                  confirmText:'受權',
                  confirmColor:'#f94218',
                  success(res) {
                    if (res.confirm) {
                      wx.openSetting({
                          success(res) {
                            console.log(res.authSetting)
                            if(res.authSetting['scope.camera']){
                              console.log('用戶手動受權成功。')
                              that.isUserOpen = true;
                            }
                          }
                        })                                
                    } else if (res.cancel) {
                      console.log('用戶點擊取消')
                      wx.navigateBack({
                        delta: 1
                      })
                    }
                  }
                })
            }
          })
        } else {
          console.log('用戶已受權,繼續執行')
        }
      }
    })
  },
})
相關文章
相關標籤/搜索