uniapp高德、百度、腾讯地图配置 SHA1
当win+r弹出cmd弹框后输入 keytool -list -v -keystore debug.keystore
显示'keytool' 不是内部或外部命令,也不是可运行的程序或批处理文件
。可以先看看是否有下载jdk且配置了环境变量,具体操作如下:keytool不是内部或外部命令的原因和解决方法
若没有安装jdk,详细流程可以参考: jdk下载安装教程
到安装jdk的位置切换到bin文件夹下,复制当前路径到cmd,输入命令:
(这个命令好像只有第一配置的时候需要输入,后面直接输入文档中对应的指令就可以了,大家可以自己试一下)
keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -keyalg RSA -validity 10000
然后提示输入密钥库口令(这里要注意输入密码的时候控制台没有任何显示,输入完毕,点击回车),默认输入android,输入完后一直回车就可以,最后询问是否正确,输入y即可,
然后按照百度/高德地图SDK集成文档输入一下指令即可:
keytool -list -v -keystore debug.keystore
注意:
- 如果出现报错“getLocation:fail [geolocation:6]定位结果错误 请到http://lbs.amap.com/api/and…”,且打包到手机上获取不到地理位置,那么可能是SHA1变动了,需要重新获取核对
- 如果出现报错“getLocation:fail [geolocation:7]定位结果错误 请到http://lbs.amap.com/api/and…”表示KEY鉴权失败需要仔细检查key绑定的sha1值与apk签名sha1值是否对应,一般会提示
key非法或过期
遇到以上情况,如果有apk的话可以推荐一种方法反向查询,直接用打包出来的apk查看签名,具体如下:
1) 将apk修改后缀为 .zip文件后解压;
2) 进入解压后的META-INF目录,该目录下会存在文件CERT.RSA
3) 在该目录下打开cmd,输入命令 :keytool -printcert -file CERT.RSA
这里将会显示出MD5和SHA1签名。