uni-app getLocation:fail [geolocation:7]KEY错误 解决办法
问题描述
使用HBuilderX制作了一个uni-app,使用到了 uni.getLocation()功能。 在打包成Android应用的时候,需要集成高德地图或者百度地图。 我选择的是高德地图。 参考官方配置文档: https://ask.dcloud.net.cn/article/29
一路走下来,打包成APK文件后,运行时默认定位到了北京(我不在北京),而且不显示我从服务端获取到的数据。
后来使用自定义基座,调试发现错误:
getLocation:fail [geolocation:7]KEY错误
问题原因
经过一通百度查找,还是没有找到原因。 直到看到有人说可能是包名或者SHA1值不一样,需要在手机上安装一个小工具 MCodeCheck.apk
添加链接描述
安装后,看到了自己的包名,才发现问题所在。
下面是官方配置文档里面的配置描述:
下面是HBuilderX里面的包名:
很自然地,我就在高地地图里面把包名配置成了 io.dcloud.__UNI__EXXXXX
打包之后,就出现了 KEY错误。
解决方案
在高地地图里面配置应用包名的时候,需要把 UNI 两边的下划线去掉。如下图所示:
至此,问题解决。希望对你有所帮助。
在此过程中,如果有其他相关的问题,比如打包、自定义基座、签名等问题,也可以留言交流。