微信小程序用戶拒絕授權(quán)如何處理-創(chuàng)新互聯(lián)

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

思明網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,思明網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為思明超過(guò)千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的思明做網(wǎng)站的公司定做!

問(wèn)題分析

在小程序里面,獲取到用戶權(quán)限是進(jìn)行某些操作的必要前提。比如在進(jìn)入小程序的時(shí)候,獲取到用戶信息,拿到 unionId 對(duì)應(yīng)到自己平臺(tái)的賬號(hào)進(jìn)行登錄,免去用戶自己輸入賬號(hào)密碼,這就是一個(gè)不錯(cuò)的體驗(yàn)。

當(dāng)我們調(diào)用 wx.getUserInfo 或者 wx.getLocation 這種需要用戶授權(quán)的 API 時(shí),小程序會(huì)彈框讓用戶選擇授權(quán):

微信小程序用戶拒絕授權(quán)如何處理

當(dāng)用戶選擇允許后,下次再進(jìn)入小程序就不會(huì)再詢問(wèn)了,直接獲得用戶授權(quán)(除非將小程序刪了再進(jìn)入)。這里的問(wèn)題在于,當(dāng)用戶點(diǎn)了拒絕之后,就拿不到相關(guān)授權(quán)了,并且在一段時(shí)間內(nèi),進(jìn)入小程序都不會(huì)再出現(xiàn)這個(gè)彈框。

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

解決方案

以獲取用戶信息直接登錄為例。增加一個(gè)授權(quán)頁(yè)面,作為進(jìn)入小程序的第一個(gè)頁(yè)面,在這里獲取用戶數(shù)據(jù)和登錄。默認(rèn)可以什么都不顯示,也可以當(dāng)做引導(dǎo)頁(yè)來(lái)使用。

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

增加一個(gè)登陸方法,代碼如下:

//登錄
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) {
          //平臺(tái)登錄
        },
        fail: function (res) {
          that.setData({
            getUserInfoFail: true
          })
        }
      })
    }
  })
}
  • 當(dāng)上門代碼走到了 fail 里面,就可以認(rèn)為在獲取授權(quán)的時(shí)候,用戶點(diǎn)了拒絕。當(dāng) getUserInfoFail 為 true 的時(shí)候,可以展示一個(gè)獲取授權(quán)的按鈕,比如像這樣:

微信小程序用戶拒絕授權(quán)如何處理

接下來(lái)介紹另一個(gè) API : wx.openSetting,使用 wx.openSetting 可以跳轉(zhuǎn)到小程序的授權(quán)設(shè)置界面,在安卓里面它長(zhǎng)這樣:

微信小程序用戶拒絕授權(quán)如何處理

在點(diǎn)擊授權(quán)按鈕后跳轉(zhuǎn)到這里,讓用戶授權(quán)了才給進(jìn)入首頁(yè),否則就停留在授權(quán)頁(yè)面。

但還有個(gè)小問(wèn)題,這個(gè) API 是基礎(chǔ)庫(kù) 1.1.0 才有的,所以需要做兼容處理:

微信小程序用戶拒絕授權(quán)如何處理

所以,最終跳轉(zhuǎn)授權(quán)的代碼如下:

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

同樣的處理方式也可以用在獲取別的權(quán)限上

以上是“微信小程序用戶拒絕授權(quán)如何處理”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁(yè)標(biāo)題:微信小程序用戶拒絕授權(quán)如何處理-創(chuàng)新互聯(lián)
URL鏈接:http://bm7419.com/article0/dsshoo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站設(shè)計(jì)公司、網(wǎng)頁(yè)設(shè)計(jì)公司、響應(yīng)式網(wǎng)站、App設(shè)計(jì)、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)