Hbuilder移动App-定位(获取百度密钥)
2019-02-13 本文已影响0人
树树呐雪
Hbuilder移动App定位问题:
- mui开发时真机调试可以定位到准确位置
但是打包后一直无法获取地址。报错:no location provide(不支持定位) - 使用百度密钥定位显示:5e-324
参考网页:
http://ask.dcloud.net.cn/article/29
http://ask.dcloud.net.cn/article/308
挺好的两个说明,就是不知道为啥开始的时候怎么都看不懂,现在自己搞懂了才发现好像他讲得挺细....
获取密钥的步骤:
-
安装java环境(推荐默认路径安装java)
-
设置环境变量(C:\Program Files (x86)\Java\jre1.8.0_181\bin)
-
生成keystore发布版的keystore:
→ 打开cmd 到java的bin目录下(C:\Program Files (x86)\Java\jre1.8.0_181\bin)
→ 执行,生成keystore的命令
keytool -genkey -alias test.keystore -keyalg RSA -validity 20000 -keystore test.keystore
(如果没有设置过密钥口令,会先提示设置密钥口令)
出现如下问题,填写后回车即可:
20190213.png
在此回车后
20190213-1.png
但这只是warnging所以没关系,继续下一步 -
获取sha1值:keytool -list -v -keystore test.keystore
依然是在bin目录下
20190213-2.png
证书指纹下会有三行数据:
20190213-3.png
其中SHA1: D0:84:C4:68:86:F3:E6:02:9F:DF:C4:0B:56:31:60:C0:01:4D:3D:B3
这段就是百度地图发布版的sha1,复制放到框内
20190213-4.png
填写好必要信息后提交,生成密钥(AK)。
20190213-5.png
-
放到项目中,密钥放入对应的框中,保存,同时保证权限模块已经授权定位模块
这个地方ios和android缺一不可,可以在申请时一并申请,否则打不了包。
设置好后打包即可。
20190213-6.png
-
注意:
→有人说Hbuilder打包时的应用名称和appid要分别和申请百度密钥时填写的应用名称和包名对应上。
但是对应不上有时候也可以打包,具体原因还待发现。
20190213-7.png
→ 打包后定位出的经纬度如果是:5e-324
需要开启手机数据流量后定位一下(可能是要激活吧,一般只有安装后的第一次使用会出现这种情况,此后不受影响。)