评论

收藏

[Android] 记录uni-app 打包成apk后获取定位

移动开发 移动开发 发布于:2022-07-19 18:40 | 阅读数:673 | 评论:0

目前正在做的一个项目需要用到地图功能,在使用数据线连接到手机进行真机调试的时候,由于uniapp自带了高德的SDK能够获取位置信息,但是在打包成apk后就不行了,原先地图的位置显示一片空白,这个时候,就需要我们去高德(或者百度)开放平台去申请应用的key了,在这里以高德地图为例,步骤如下:
第一步:登录uniapp开发者后台(DCloud开发者中心),登录后,切换到 应用管理 -> 我创建的应用 -> 应用列表 -> 找到你正在开发的应用,点击应用名称,页面会切换到你选中的应用的视图,选择”应用证书管理“
DSC0000.png

我这里已经生成过证书了,如果没有生成的话,点击一下就可以生成应用证书了(大概也就2~3分钟的样子)
DSC0001.png

点击证书详情,把  ”别名“、”SHA1“复制下来,再点击一下”证书下载“,把证书下载到你本地
DSC0002.png

第二步:确定你的应用包名,比如我这里叫 ”com.xxx.app“,包名规则一般都是网站的网址反着写就行了
第三步:登录高德开放平台(高德开放平台 | 高德地图API (amap.com)),, 登录后,进入 应用管理 -> 我的应用 -> 创建新应用(右上角)
DSC0003.png

先创建应用,然后页面上会生成一行新的折叠面板,点击右边的添加
DSC0004.png

输入完必填项后,点击提交后,在应用下面会出现新的一行数据,把这个key复制一下
DSC0005.png

第四步:再次打开HBuilderX, 打开manifest.json, 找到App模块配置,在Geolocation 和 Maps 两项前面打勾,把上一步获取到的key复制进对应的appkey上(注意区分不同平台)
DSC0006.png

DSC0007.png

至此,基本配置完成了,然后就是发行 -> 原生App-云打包
DSC0008.png

打包注意事项:
1. Android包名必须和高德开放平台中设置的PackageName一致才行
2. 打包的时候,一定要使用uniapp生成的自有证书,千千万万不要使用公共测试证书,否则的话会导致你的app无法定位,血与泪的教训啊~~~~

关注下面的标签,发现更多相似文章