getLocation:fail [geolocation:7]KEY错误
报错如下
{"errMsg": "getLocation:fail [geolocation:7]KEY错误 请到http://lbs.amap.com/api/android-location-sdk/guide/utilities/errorcode/查看错误码说明,错误详细信息:auth fail:INVALID_USER_SCODE#SHA1AndPackage# ..................................:uni.11111111别名#gsid#033015136204174592579909700049290117406#csid#a53d67f044db4a76a8a291aeeede7ce6#0701#pm111111"
}
根据提示当高德开放平台查看错误汇总。如下:
很明显,大概意思是,平台key绑定的sha1值与apk签名sha1值 不对应。(亦或者,是高德开发平台 申请的key和对应的包名对不上)
又了解到uni项目打包也有多种1、云上排队(每天三次免费机会)2.通过Android或者iOS开发工具打包。
SHA1对比
在官网控制台里找到您使用的Key,查看其当前填写的SHA1值与第一步获取的SHA1值是否匹配(debug或者release至少有一个与第一步获取的SHA1一致)。请注意不能带有空格,SHA1严格校验大小写。
第三步:确保SHA1值一致,如不一致请调整一致。
检查包名
1、Key注册时填写的包名应该与AndroidManifest.xml配置文件的package属性内容相一致,如不一致请调整。
2、Android Studio开发者请注意调整build.gradle文件的applicationid与package一致,如不一致将会导致鉴权失败。
3、请注意检查包名的大小写是否统一。
Key值填写位置:
1、通过AndroidManifest.xml配置Key。
<meta-data android:name="com.amap.api.v2.apikey" android:value="key" >//开发者申请的key </meta-data>
meta-data标签位置需要在application标签内部。
2、通过SDK提供的setApiKey(String key);接口设置Key,注意Key设置要在SDK业务初始化之前。
地图SDK的setApiKey(String key)方法在MapsInitializer类中。 搜索SDK的setApiKey(String key)方法在ServiceSettings类中。 定位SDK的setApiKey(String key)方法在AMapLocationClient类中。