打开wifi开关,集成高德地图,使用uni.getLocation定位。(非必现,某些地理位置或环境下必现,开关打开则异常,开关关闭则正常)
- 发布:2024-06-28 16:13
- 更新:2024-07-31 15:33
- 阅读:216
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 无关
HBuilderX类型: 正式
HBuilderX版本号: 4.15
手机系统: Android
手机系统版本号: Android 14
手机厂商: 小米
手机机型: 12pro(关系不大,多机型遇到问题)
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
在wifi开关打开却并未实际链接到wifi时,使用精准定位。如今的用户手机,wifi开关可能90%的时间都是打开状态,如果仅根据开关状态来决定使用何种定位方式已不符合如今的社会环境。
在wifi开关打开却并未实际链接到wifi时,使用精准定位。如今的用户手机,wifi开关可能90%的时间都是打开状态,如果仅根据开关状态来决定使用何种定位方式已不符合如今的社会环境。
实际结果:
略
略
bug描述:
前提:通过uni.getLocation获取位置,配置高德地图,能够成功定位,且多数情况下定位准确,但在某些地理位置,或某些环境下出现奇怪现象:wifi开关打开时,定位偏差巨大,且多次定位获取的位置还不一致,会来回横跳。感觉上此时使用了wiif定位、基站定位或其他不太精准的定位方式?但是虽然wifi开关处于【打开状态】,但是【并未链接】到任何wifi。【wifi开关关闭后则一切正常】,且定位精准。
期望:uniapp内部存在多种定位方式没问题,连上wifi时使用wifi定位也没问题,但是只是【开关打开】的状态(实际【并未连接wifi】)就使用wifi定位(只是猜测,我不知道内部逻辑)是否合理?如今用户的wifi开关打开已经成为常态,然而实际的测试结果,定位是否精准却和wifi开关是否打开有关,令人难易接受。
以下是部分代码。注:已正确配置高德地图,否则也不会多数情况下能够获取正确的位置。
uni.getLocation({
type: "gcj02",
geocode: geocode,
isHighAccuracy: true,
success: res => {
},
fail: err => {
}
})
1 个回复
1***@163.com
现在也还是有那个问题,官方也不解决,并且开启了高精度,ios获取位置在10s左右才能获取到,安卓的在两三秒左右