1***@qq.com
1***@qq.com
  • 发布:2024-03-13 11:10
  • 更新:2024-03-13 15:50
  • 阅读:232

【报Bug】uni.getlocation触发的权限请求导致原生定位插件出现问题

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 12

HBuilderX类型: 正式

HBuilderX版本号: 3.99

手机系统: Android

手机系统版本号: Android 14

手机厂商: 小米

手机机型: redmi k60

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

uni.getlocation发起的权限请求导致app在不重启的前提下,原生定位插件(高德)始终返回第一次的定位信息

预期结果:

uni.getlocation发起的权限请求在同意之后,原生定位插件(高德)也能正常使用

实际结果:

uni.getlocation发起的权限请求导致app在不重启的前提下,原生定位插件(高德)始终返回第一次的定位信息

bug描述:

项目开启时调用了uni.getlocation接口,在没有权限的情况下会自动请求权限,而同意这个权限之后,在不重启app的情况下,一个高德sdk原生插件在调用后将始终只返回第一次的定位信息,无论调用几次,经纬度与时间戳都始终是第一次的结果,后续尝试发现,如果不使用uni,getlocation触发的定位权限请求,而是自己先使用原生发起定位权限请求,将不会出现上述问题,请问这是为什么?

2024-03-13 11:10 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com (作者)

经过几次测试发现并不是那次权限申请的问题,而是因为调用了uni.getlocation接口,当type设置为‘gcj02’时,调用一次之后就会导致原生插件那边的回调始终返回同一个位置信息,这是为什么?

1***@qq.com

1***@qq.com (作者)

使用plus.geolocation.getCurrentPosition接口也一样,每次调用返回的时间戳都是同一个,这是怎么回事?还是前台调用,都没有进入后台

要回复问题请先登录注册