您好,登錄后才能下訂單哦!
現在在做一個小程序有地圖的功能,通過點擊按鈕打開地圖。調用wx.getlocation()這個接口是需要用戶的授權。如果他授權了,返回一個success當然最好啦,就什么問題都沒有了。如果他點了取消,返回一個fail,我就使用預設的經緯度打開一個定位。但是如果用戶點擊返回以后,再次點擊按鈕進入地圖就會沒有反應(如果一開始有授權的話就可以再次重新打開地圖)。
有什么方法可以解決呢,或者怎樣可以重新獲取用戶授權。畢竟叫他們刪了重來的話,這樣的體驗好像不大好。。。
方法:A:單擊隱藏圖章wx.openSetting(OBJECT) 重新調用小程序授權,文檔現在已經有了【以下是文檔內容】
wx.openSetting(OBJECT)
調起客戶端小程序設置界面,返回用戶設置的操作結果
Object 參數說明:
參數 | 類型 | 必填 | 說明 |
---|---|---|---|
success | Function | 否 | 接口調用成功的回調函數,返回內容詳見返回參數說明。 |
fail | Function | 否 | 接口調用失敗的回調函數 |
complete | Function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
success返回參數說明:
參數 | 類型 | 說明 |
---|---|---|
authSetting | Object | 用戶授權結果,其中 key 為 scope 值,value 為 Bool 值,表示用戶是否允許授權,詳見 scope 列表 |
示例代碼:
wx.openSetting({ success: (res) => { /* * res.authSetting = { * "scope.userInfo": true, * "scope.userLocation": true * } */ } })
wx.getSetting(OBJECT)
獲取用戶的當前設置
Object 參數說明:
參數 | 類型 | 必填 | 說明 |
---|---|---|---|
success | Function | 否 | 接口調用成功的回調函數,返回內容詳見返回參數說明。 |
fail | Function | 否 | 接口調用失敗的回調函數 |
complete | Function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
success返回參數說明:
參數 | 類型 | 說明 |
---|---|---|
authSetting | Object | 用戶授權結果,其中 key 為 scope 值,value 為 Bool 值,表示用戶是否允許授權,詳見 scope 列表 |
示例代碼:
wx.getSetting({ success: (res) => { /* * res.authSetting = { * "scope.userInfo": true, * "scope.userLocation": true * } */ } })
Map:function(){ wx.getLocation({ type: 'gcj02', success: function(res){ // success wx.openLocation({ latitude: res.latitude, longitude: res.longitude, scale: 28, })}, fail: function(res){ // fail wx.openLocation({ address:"獲取授權失敗 打開默認定位", //默認定位我就隱藏啦 latitude: XX.XX, longitude: XX.XX, scale: 28, }, wx.openSetting({ //重新請求獲取定位 success: (res) => {}}) )}, }) }
以上所述是小編給大家介紹的微信小程序如何再次獲取用戶授權的方法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。