微信小程序打开授权位置信息界面,拒绝授权后用户手动点击后打开

就是如下这个页面,在小程序内点击后进入这个页面,用户设置完定位授权后,返回小程序可以拿到授权结果。是拒绝还是同意,然后进行相应的操作
在这里插入图片描述

WXML:

<view class="btn tx-14" catchtap="getAddres">位置授权</view>

JS:

getAddres() {
    let that = this;
    wx.openSetting({ // 打开设置界面
      success: res => {
        if (res.authSetting['scope.userLocation'] || res.authSetting['scope.userLocationBackground']) {
          // 授权成功,用户点击了使用时可获取或者使用时离开后都可获取
          wx.getLocation({ // 获取用户定位,返回经纬度等信息
            isHighAccuracy: true,
            type: 'gcj02',
            success: res => {
              let latitude = res.latitude
              let longitude = res.longitude
              let url = "https://api.map.baidu.com/geocoder/v2/";
              let params = {
                ak: "h4uqXwClsa84XjNKvS4******", //免费去百度地图上申请一个
                output: "json",
                location: latitude + "," + longitude
              }
              wx.request({
                url: url,
                data: params,
                success: function (res1) {
                  if (res1.errMsg == "request:ok") { // 获取位置信息成功
                    wx.setStorageSync('location', res1);
                    wx.setStorageSync('openAdd', true);
                    wx.showToast({
                      title: '授权成功',
                    })
                  } else {
                    wx.showToast({
                      title: '授权失败,请从新授权',
                      icon: 'none'
                    })
                  }
                },
              })
            }
          })
        } else {
          // 没有允许定位权限
          wx.showToast({
            title: '您拒绝了定位权限,请从新授权',
            icon: 'none'
          });
        }
      }
    });
  },

扩展:选择使用时,就是仅限小程序在前台时有效,小程序目前处于运行中可获取到,切入后台后,在请求定位接口是无法成功的,第二种使用时或者离开后这个就不限制了,就比如用户小程序切入后台,只要还在运行,均可请求位置信息,这个常用于需要实时提交定位的场景,微信有提供两个接口获取定位,第一个是有时间限制的,另一个就是不限次数,不限制时间,设置一个间隔时间,每隔几秒会自动请求一次定位信息,而第一个接口如果这样做,返回的定位会不准确,具体的可以看官方文档哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端攻城狮路飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值