问题描述
前几日开发h5应用时,手机连接电脑直接调试地图定位是正确的,但是打了包之后会点击定位就会定位到几内亚湾附近海域,并且只有安卓有此问题,苹果定位正常。
打印定位返回信息如下,位置信息返回均为5e-324,而5e-324在js中代表0以上的最小数,而坐标(0,0),就是我们每次都定位到的几内亚湾附近.
解决办法
一、检查百度地图key是否正确填写生成的正式key,而不是测试用key,并且在打包时输入对应的PackageName
二、检查是否使用了公共测试证书来进行打包,而非自有证书
如果采用公共测试证书进行打包,安卓会定位到几内亚湾,而我也是这个问题,需要使用自有证书来打包.
三、检查在app内是否基于了权限检查,并提示打开定位权限
检测和开启权限代码自行百度
四、检查是否在manifest.json文件中勾选了定位权限
- ACCESS_FINE_LOCATION
- ACCESS_COARSE_LOCATION
如果本地调用可行,而打包后不行,重点检查一和二两点