微信小程序獲取地理位置 - 新聞資(zī)訊 - 雲南小程序開發|雲南軟件開發|雲南網站(zhàn)建設-西山區知普網絡科技工作室

159-8711-8523

雲南網建設/小程序開發/軟件開發

知識

不管是網站(zhàn),軟件還是小程序,都要直接或間接能為您産生價值,我們在追求其視覺表現的同時,更側重于功能的便捷,營銷的便利,運營的高效,讓網站(zhàn)成為營銷工具,讓軟件能切實提升企業(yè)内部管理水平和(hé)效率。優秀的程序為後期升級提供便捷的支持!

微信小程序獲取地理位置

發表時間:2020-10-19

發布人:葵宇科技

浏覽次數:69

1.頁面配置

在app.json中(zhōng)配置
  "permission": {
    "scope.userLocation": {
      "desc": "你(nǐ)的位置信息将用于小程序位置接口的效果展示"
    }
  }

2.使用wx.getLocation()

  wx.getLocation({
      success(res) {
        console.log('開啟後台定位', res)
      },
      fail(res) {
        console.log('開啟後台定位失敗', res)
      }
    })

3.考慮用戶不授權,下(xià)次還能呼喚起授權頁面

使用wx.getSetting()獲取用戶的當前設置。返回值中(zhōng)隻會出現小程序已經向用戶請求過的權限。
使用wx.openSetting()調起客戶端小程序設置界面,返回用戶設置的操作結果。設置界面隻會出現小程序已經向用戶請求過的權限。

  wx.getLocation({
      success(res) {
        console.log('開啟後台定位', res)
      },
      fail(res) {
        console.log('開啟後台定位失敗', res)
        authorize ()
      }
    })
    const authorize = () => wx.getSetting({
      success(res) {
        // console.log(res, 'res');
        let statu = res.authSetting
        console.log(statu['scope.userLocation'], 'statu')
        if (!statu['scope.userLocation']) {
          wx.showModal({
            title: '是否授權當前位置',
            content: '需要獲取您的地理位置,請确認授權,否則地圖功能将無法使用',
            success(tip) {
              if (tip.confirm) {
                wx.openSetting({
                  success(data) {
                    if (data.authSetting['scope.userLocation'] === true) {
                      wx.showToast({
                        title: '授權成功',
                        icon: 'success',
                        duration: 1000
                      })
                    } else {
                      wx.showToast({
                        title: '授權失敗',
                        icon: 'none',
                        duration: 1000
                      })
                    }
                  },
                  fail() {
                    wx.showToast({
                      title: '授權失敗',
                      icon: 'none',
                      duration: 1000
                    })
                  }
                })
              }
            }
          })
        }
      },
      fail(err) {
        wx.showToast({
          title: '調用授權窗口失敗',
          icon: 'none',
          duration: 1000
        })
      }
    })

相關(guān)案例查看更多