小程序如何获取用户的当前位置(小程序如何获取用户的当前位置地图)

本站:VPS评测参考推荐/专注分享VPS主机优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情!
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作

有三种方法可以获得用户的当前位置:

(学习视频分享:编程入门)

1.wx.getLocation(主要与wx.openLocation一起使用)

获得当前的精度,纬度和速度。不需要授权。当type设置为gcj02时,返回可用于wx.openLocation的坐标。

2、wx .选择位置

需要授权。打开地图选择位置。

首次调用该方法时出现。

出现之前允许权限

如果第一次不允许,总是调用wx.chooseLocation的fail方法。

3、wx.openLocation

需要授权。使用微信内置地图查看位置。主要用于检查从起点到终点的路线。

有三种授权方法:

1、wx.getSetting

获取用户的当前设置,只有小程序已经向用户请求的权限才会出现在返回值中,类似如下。

2、wx.openSetting

选择权限设置界面,只有小程序已经向用户请求的权限才会出现在设置界面,类似如下。

3、wx.authorize

提前向用户发起授权请求。调用后马上会弹出一个窗口,询问用户是否同意授权小程序使用某个功能或者获取用户的一些数据,但实际不会调用相应的接口。如果用户之前已经同意授权,则不会有弹窗,直接返回成功。,类似于以下内容

这就是wx.authorize出现的地方。

问题来了:第一次用wx.chooseLocation()获取权限,然后再用wx.getSetting()获取权限,该怎么办?

想法:wx.chooseLocation()有一个失败方法。如果在第一次拒绝之后,以后所有选择地图的调用都触发这个,那么我可以在fail方法中使用wx.getSetting(),这样每次都可以判断是否已经给了权限。

第一步:由于定位方法可以多次使用,所以我将定位方法写在App.js中,以便于调用。

App({ //获取用户的地理位置权限Get permission:function(obj){ wx . choose location({ success:function(RES){ obj . setdata({ addr:res.address//call直接成功设置地址})},fail:function(){ wx . Get setting({ success:function(RES){ var statu = RES . auth setting;如果(!状态

最终在手机上获得的位置偏差也不算太大。

更新wx.openSetting的注意事项

从版本2.3.0开始,用户可以点击打开设置页面并管理授权信息。

也就是2.3.0版本以后,当我通过上面的wx.showModal的回调函数调用wx.openSetting时,会出现以下错误:

openSetting:fail只能由用户点击手势调用。

但是我从测试2.2.4开始到2.3.1都会得到上面的错误。

2.3.2及以上不会出现这种问题。.......

而当我测试2.0.8到2.2.3时,会出现以下错误。.....

其他人没有这个问题。我不明白。..

推荐:小程序开发教程。以上是小程序如何获取用户当前位置的细节。请多关注本站其他相关文章!

本文由本站刊发,转载请注明:小程序如何获取用户的当前位置(小程序如何获取用户的当前位置地图) https://本站.com/80276.html

推荐站内搜索:工信部网站备案查询、windows虚拟主机、香港空间、万网空间管理、主机租用、台湾服务器租用、ip 查询、香港vps主机、cn域名备案、美国域名注册、