小編給大家分享一下微信小程序用戶拒絕授權(quán)如何處理,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
在小程序里面,獲取到用戶權(quán)限是進行某些操作的必要前提。比如在進入小程序的時候,獲取到用戶信息,拿到 unionId 對應(yīng)到自己平臺的賬號進行登錄,免去用戶自己輸入賬號密碼,這就是一個不錯的體驗。
當我們調(diào)用 wx.getUserInfo 或者 wx.getLocation 這種需要用戶授權(quán)的 API 時,小程序會彈框讓用戶選擇授權(quán):
當用戶選擇允許后,下次再進入小程序就不會再詢問了,直接獲得用戶授權(quán)(除非將小程序刪了再進入)。這里的問題在于,當用戶點了拒絕之后,就拿不到相關(guān)授權(quán)了,并且在一段時間內(nèi),進入小程序都不會再出現(xiàn)這個彈框。
從用戶體驗及保護隱私的角度考慮,小程序好是不用授權(quán)也可以使用(或者體驗)。但有些類型的小程序確實是需要拿到用戶信息才能使用的。這里提供一個簡單的解決方案。
以獲取用戶信息直接登錄為例。增加一個授權(quán)頁面,作為進入小程序的第一個頁面,在這里獲取用戶數(shù)據(jù)和登錄。默認可以什么都不顯示,也可以當做引導(dǎo)頁來使用。
獲取用戶信息需要用到 wx.login 和 wx.getUserInfo 兩個 API,關(guān)于這兩個 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 里面,就可以認為在獲取授權(quán)的時候,用戶點了拒絕。當 getUserInfoFail 為 true 的時候,可以展示一個獲取授權(quán)的按鈕,比如像這樣:
接下來介紹另一個 API : wx.openSetting,使用 wx.openSetting 可以跳轉(zhuǎn)到小程序的授權(quán)設(shè)置界面,在安卓里面它長這樣:
在點擊授權(quán)按鈕后跳轉(zhuǎn)到這里,讓用戶授權(quán)了才給進入首頁,否則就停留在授權(quán)頁面。
但還有個小問題,這個 API 是基礎(chǔ)庫 1.1.0 才有的,所以需要做兼容處理:
所以,最終跳轉(zhuǎn)授權(quán)的代碼如下:
//跳轉(zhuǎn)設(shè)置頁面授權(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)才能使用哦~ 錯過授權(quán)頁面的處理方法:刪除小程序->重新搜索進入->點擊授權(quán)按鈕' }) } }
還好 1.1.0 已結(jié)算是比較早的版本了,現(xiàn)在都出到 1.3.0 了。
同樣的處理方式也可以用在獲取別的權(quán)限上
以上是“微信小程序用戶拒絕授權(quán)如何處理”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)頁標題:微信小程序用戶拒絕授權(quán)如何處理-創(chuàng)新互聯(lián)
URL鏈接:http://jinyejixie.com/article0/dsshoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站設(shè)計公司、網(wǎng)頁設(shè)計公司、響應(yīng)式網(wǎng)站、App設(shè)計、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容