收藏
回答

授权问题,scope.userLocation的desc,多场景怎么使用?

scope.userLocation的desc,如果场景不同,用途不同,如何根据不同场景,显示不同的desc描述信息?

回答关注问题邀请回答
收藏

1 个回答

  • Code Weaver
    Code Weaver
    2023-02-22

    允许授权一次后 正常使用不会再弹授权了。所以第一次显示后 后面的就不需要展示desc了

    2023-02-22
    有用 1
    回复 5
    • 昨日青空
      昨日青空
      2023-02-22
      那要是第一次拒绝了,然后去了另外一个场景,这样的情况也存在的把
      2023-02-22
      回复
    • Code Weaver
      Code Weaver
      2023-02-22回复昨日青空
      第一次拒绝了,它也不会再弹了,需要使用wx.getSetting获取用户的授权状态,拒绝了调用wx.openSetting()打开。


      你都没测试过第一次拒绝了,再调用不会再弹窗的逻辑么?
      2023-02-22
      回复
    • 昨日青空
      昨日青空
      2023-02-22回复Code Weaver
      OK,我试一下,谢啦
      2023-02-22
      回复
    • Code Weaver
      Code Weaver
      2023-02-22回复昨日青空
      const app = getApp()


      Page({
        data: {
          title: ''
        },
        onLoad() {
          this.getLocation()
        },
        getLocation() {
          wx.getLocation({
            type: 'gcj02',
            complete: res => {
              this.setData({
                title: JSON.stringify(res)
              })
            }
          })
        },
        handleClick() {
          wx.getSetting({
            success: res => {
              if (!res.authSetting['scope.userLocation']) { // 拒绝了地理位置授权
                wx.openSetting({
                  success: (resp) => {
                    if (resp.authSetting['scope.userLocation']) { // 当用户开启了地址位置授权,返回上个页面时候做逻辑处理
                      // 可以重新定位获取经纬度
                      this.getLocation()
                    }
                  }
                })
              }
            }
          })
        }
      })
      2023-02-22
      2
      回复
    • 昨日青空
      昨日青空
      2023-02-22回复Code Weaver
      感谢感谢!
      2023-02-22
      回复
登录 后发表内容