中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信小程序用戶拒絕授權如何處理

發布時間:2021-01-20 14:10:37 來源:億速云 閱讀:1329 作者:小新 欄目:移動開發

小編給大家分享一下微信小程序用戶拒絕授權如何處理,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

問題分析

在小程序里面,獲取到用戶權限是進行某些操作的必要前提。比如在進入小程序的時候,獲取到用戶信息,拿到 unionId 對應到自己平臺的賬號進行登錄,免去用戶自己輸入賬號密碼,這就是一個不錯的體驗。

當我們調用 wx.getUserInfo 或者 wx.getLocation 這種需要用戶授權的 API 時,小程序會彈框讓用戶選擇授權:

微信小程序用戶拒絕授權如何處理

當用戶選擇允許后,下次再進入小程序就不會再詢問了,直接獲得用戶授權(除非將小程序刪了再進入)。這里的問題在于,當用戶點了拒絕之后,就拿不到相關授權了,并且在一段時間內,進入小程序都不會再出現這個彈框。

從用戶體驗及保護隱私的角度考慮,小程序最好是不用授權也可以使用(或者體驗)。但有些類型的小程序確實是需要拿到用戶信息才能使用的。這里提供一個簡單的解決方案。

解決方案

以獲取用戶信息直接登錄為例。增加一個授權頁面,作為進入小程序的第一個頁面,在這里獲取用戶數據和登錄。默認可以什么都不顯示,也可以當做引導頁來使用。

獲取用戶信息需要用到 wx.login 和 wx.getUserInfo 兩個 API,關于這兩個 API 的具體信息大家可以到官方文檔去查看。

增加一個登陸方法,代碼如下:

//登錄
login: function () {
  var that = this
  if (typeof success == "function") {
    this.data.getUserInfoSuccess = success
  }
  wx.login({
    success: function (res) {
      var code = res.code;
      wx.getUserInfo({
        success: function (res) {
          //平臺登錄
        },
        fail: function (res) {
          that.setData({
            getUserInfoFail: true
          })
        }
      })
    }
  })
}
  • 當上門代碼走到了 fail 里面,就可以認為在獲取授權的時候,用戶點了拒絕。當 getUserInfoFail 為 true 的時候,可以展示一個獲取授權的按鈕,比如像這樣:

微信小程序用戶拒絕授權如何處理

接下來介紹另一個 API : wx.openSetting,使用 wx.openSetting 可以跳轉到小程序的授權設置界面,在安卓里面它長這樣:

微信小程序用戶拒絕授權如何處理

在點擊授權按鈕后跳轉到這里,讓用戶授權了才給進入首頁,否則就停留在授權頁面。

但還有個小問題,這個 API 是基礎庫 1.1.0 才有的,所以需要做兼容處理:

微信小程序用戶拒絕授權如何處理

所以,最終跳轉授權的代碼如下:

//跳轉設置頁面授權
openSetting: function () {
  var that = this
  if (wx.openSetting) {
    wx.openSetting({
      success: function (res) {
        //嘗試再次登錄
        that.login()
      }
    })
  } else {
    wx.showModal({
      title: '授權提示',
      content: '小程序需要您的微信授權才能使用哦~ 錯過授權頁面的處理方法:刪除小程序->重新搜索進入->點擊授權按鈕'
    })
  }
}
  • 還好 1.1.0 已結算是比較早的版本了,現在都出到 1.3.0 了。

同樣的處理方式也可以用在獲取別的權限上

以上是“微信小程序用戶拒絕授權如何處理”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

辽阳市| 青海省| 峡江县| 和田市| 温泉县| 永仁县| 汝阳县| 柘荣县| 图片| 杭锦旗| 廊坊市| 射洪县| 五河县| 泊头市| 临洮县| 东宁县| 琼结县| 乡宁县| 天峨县| 西和县| 留坝县| 阿克陶县| 农安县| 阿尔山市| 枣庄市| 孙吴县| 垣曲县| 冀州市| 财经| 墨江| 宁蒗| 曲麻莱县| 镇雄县| 大足县| 寿宁县| 新乐市| 孝义市| 平塘县| 定州市| 郓城县| 蓬安县|