如题,是由于一下原因吗?
Tips
H5 端获取定位信息,需要部署在 https 服务上,本地预览(localhost)仍然可以使用 http 协议。(这个可以排除,因为扫了官方的demo的二维码,手机浏览器也不能获取当前位置)
无 GPS 模块的 PC 设备使用 Chrome 浏览器的时候,位置信息是连接谷歌服务器获取的,国内用户可能获取位置信息失败。
因为要做个手机网站,使用uni-app,有没有获取定位的其他方案呢?
如题,是由于一下原因吗?
Tips
H5 端获取定位信息,需要部署在 https 服务上,本地预览(localhost)仍然可以使用 http 协议。(这个可以排除,因为扫了官方的demo的二维码,手机浏览器也不能获取当前位置)
无 GPS 模块的 PC 设备使用 Chrome 浏览器的时候,位置信息是连接谷歌服务器获取的,国内用户可能获取位置信息失败。
因为要做个手机网站,使用uni-app,有没有获取定位的其他方案呢?
6 个回复
孟孟
uni.getLocation 可以获取经纬度 但是我想渲染到页面 把成功回调的经纬度赋值到data里面就会报错(报错信息:thirdScriptError undefined is not an object (evaluating 'this.city = res.address.city');at pages/index/index onLoad function;at api getLocation success callback function)
大神能帮我解决一下么
DCloud_heavensoft
uni-app在h5侧,用的就是标准h5的定位。如果获取不到定位信息,不是uni-app的问题。检查如下:
尽量不要在pc浏览器上测试定位,pc上建议用HBuilderX自带的内置浏览器测试。
1***@qq.com (作者)
刚刚测试了一下,原来要手机提前打开GPS,如果uni.getLocation失败了,再打开GPS也获取不到,要在刷新一下页面,否则还是失败。
2019-03-13 17:10
1***@qq.com (作者)
顺便问一下,知道了经纬度,手机网站有没有接口获取详细地址中文描述呢?看文档好像只支持APP和小程序呢!
2019-03-13 17:12
1***@qq.com (作者)
我知道咋弄了,感谢,https://restapi.amap.com/v3/geocode/regeo?key=key&location=经纬度
2019-03-13 17:18
devil_whl
回复 1***@qq.com: 怎么操作啊,兄弟
2019-10-18 18:02
Min_Orange
回复 1***@qq.com: 您好 问一下 您的定位偏差大么
2020-08-25 09:36
9157654 - 程序员
请问,如何在H5中获取当前的经纬度
DCloud_heavensoft
uni.getLocation
2019-07-04 18:49
9157654
回复 DCloud_heavensoft: 试过了,但是还是获取不到经纬度
2019-07-05 12:01
1***@qq.com
回复 9157654: 现在可以了吗 我也遇到了同样的问题
2019-08-17 10:23
9157654
回复 1***@qq.com: 不行
2019-08-22 16:33
1***@qq.com
回复 9157654:你好,你这问题处理了吗?我现在正为次发愁呢,试了好多都不执行success下的代码
2019-10-06 15:06
1***@qq.com
回复 9157654: 你好 请问问题解决了嘛 我掉进去好久了
2019-11-23 16:01
1***@163.com
回复 1***@qq.com: 请问解决了吗
2019-11-25 13:46
3***@qq.com
回复 DCloud_heavensoft: 该API确实存在问题,浏览器位置允许;然后为了包装Google地址被墙的问题,我还开启了VPN的,API方法在执行,但一直无响应(success、fail、complete三个回调函数均未执行) 请官方核对一下,谢谢
2020-01-16 20:49
DCloud_heavensoft
回复 3***@qq.com: https://uniapp.dcloud.io/h5/pages/API/get-location/get-location,手机访问这个地址,测了很多手机,都是正常的
2020-01-17 00:07
1***@qq.com
回复 DCloud_heavensoft:我也测了,pc web一直fail,HbuilderX内置浏览器可以,华为手机百度、qq浏览器可以,会提示授权弹框,自带浏览器(包括模拟器)有些页面都没加载出来(显示网络不给力,点击屏幕重试),可能版本低兼容性不够,另外我的需求是原生app通过webview内嵌H5页面,本地测试没有启用https协议,然后真机测试也是一直{errMsg: "getLocation:faill"}(确保gps和wifi已开)
2020-03-12 09:13
DCloud_heavensoft
回复 1***@qq.com: 这种情况,你只能让原生去解决,你的前端代码没问题,调用的是标准h5的定位。当然最好的方式,是直接集成uni小程序sdk,不要内嵌h5,而是内嵌小程序进去,体验会更好
2020-03-13 04:16
1***@qq.com
回复 DCloud_heavensoft: 多谢您的建议,我下载官网DEMO hello-uniapp本地运行到浏览器,会返回地址,然后通过原生app内嵌访问这个地址,也是不行。另外我直接原生访问官方提供的https://uniapp.dcloud.io/h5/pcguide.html#/h5/这个链接,里面的获取当前位置经纬度是可以的。所以,我想是不是跟http和https有关呢?
2020-03-13 15:46
刚0810
回复 1***@qq.com: 怎么解决的,大佬
2020-05-13 11:13
1***@qq.com
回复 刚0810: 还没解决呢,暂由原生提供
2020-05-20 16:22
y***@163.com
回复 DCloud_heavensoft: 试了你说的那个官网 用手机访问 是不行的
2020-07-08 19:28
Min_Orange
回复 DCloud_heavensoft: 拿到的经纬度地址与实际偏差很大怎么办
2020-08-24 17:51
龙大婷 - 熟悉原生开发和web开发
为啥我用 内中浏览器 获取坐标 uni. getLocation api 都不执行进去 坐标更没有了
w***@163.com
我也是这种情况,有解决方法吗
2019-09-24 09:33
龙大婷
回复 w***@163.com: 需要模拟器预览
2019-09-24 18:01
devil_whl
回复 龙大婷: 我的在手机浏览器打开uni. getLocation 也没执行
2019-10-18 17:00
大傻智
回复 devil_whl: 我也是这样,访问的本地的ip地址访问页面,也是获取不到地址,请问解决了吗
2019-12-19 17:55
1***@qq.com
我的也是。直接失败
2019-12-25 13:45
xianjuns - 这人很懒
必须使用https网址?那怎么测试啊
l***@100true.com
我用getLocation 我在海淀区,西二旗,给我定位到天安门了,误差太大了吧