小程序初探之三-一個定位bug

叫醒個人不是夢想,是bug

問題描述: 小程序裏的定位功能不能喚起地圖,一直在確認受權之間來回切。git

遇到一樣問題的同窗,若是着急,直接看最後一段便可。json

早上被產品同窗呼叫,說小程序由於定位功能出了問題不能下單了。小程序

趕忙打開電腦,查看小程序更新日誌:緩存

客戶端 7.0.0 新增配置
A 新增 框架 支持頁面級自定義導航配置 navigationStyle: custom 詳情
A 新增 框架 支持頁面禁止右滑返回手勢 disableSwipeBack: true 詳情
A 新增 框架 如需使用位置接口,需在 app.json 中添加配置 permission
字段用於說明位置接口用途bash

覺得本身很快找到問題,在app.json添加好了配置:微信

"permission": {
    "scope.userLocation": {
      "desc": "你的位置信息將用於推薦距離最近的訂單"
    }
  }
複製代碼

發現問題仍是不斷復現,且只有部分手機有問題。app

趕忙拿過來問題機真機調試,發現有段代碼沒有執行,框架

wx.openSetting({
      success: function (settingRes) {
        if (settingRes.authSetting['scope.userLocation']) {
          wx.getLocation({
            type: 'gcj02',
            success: function (res) {
              let {
                latitude,
                longitude
              } = res
              that.globalData.iSlocation = true
              that.globalData.latitude = latitude
              that.globalData.longitude = longitude
              callBack && callBack()
            }
          })
        } else {
        }
      }
    })
複製代碼

獲取受權配置一切正常,settingRes.authSetting['scope.userLocation']true, 可是post

wx.getLocation({
            type: 'gcj02',
            success: function (res) {
              let {
                latitude,
                longitude
              } = res
              that.globalData.iSlocation = true
              that.globalData.latitude = latitude
              that.globalData.longitude = longitude
              callBack && callBack()
            }
          })
複製代碼

根本不執行。ui

忽然想死。可是心裏強大的程序媛不能放棄哈。 接着調試,點問題機的掃一掃不當心點成了搖一搖。

這時候,奇蹟出現了

搖一搖頁面出現了定位提醒,這個應該是微信的定位受權,點了贊成。

而後,再點開個人小程序,問題不出現了!!

因此,我在想,小程序是基於微信的,小程序雖然受權了位置信息,可是微信的位置受權由於某種緣由(升級?清除緩存?)失效了。這時候小程序的也不能用。 小程序的位置受權是依賴微信的位置受權的?只能這樣猜一下了。

吐槽一下,小程序的文檔真的寫的挺糊弄的。

小程序初探之二

相關文章
相關標籤/搜索