uniapp安卓app打包后获取位置信息失败解决方法(含高德地图key详细申请流程)

这个也是我在作uniapp混合app时遇到的问题,也是困惑了几天,网上也有很大相关文章,可是有些地方有些不清晰,让新手很困惑。json

问题缘由

我在项目中碰到两个问题安全

  1. 若是只须要用定位功能获取到经纬度坐标的,能够不用在manifest.json --> App SDK配置中勾选定位和地图服务(注意:部分国产Android手机可能必须勾选才能获取位置,看下图),可是项目中的地图功能却无法用
  2. 我在高德地图申请了key,也在manifest.json --> App SDK中填写了,可是却并没有生效,打包完连基本的经纬度都获取不到了,可是地图貌似能用,哈,这应该是大多数人遇到的问题

 

解决方法

解决方法就是,申请高德或者百度的key,在manifest.json --> App SDK中勾选地图和定位服务,在App模块权限配置中勾选Maps,这样咱们能够获取更多的位置服务权限。网络

 

 

 

 

 

怎么在高德地图申请key

其实主要的问题是出在这里,大多数人配置完这个在app上还不生效,就是由于申请key时填的包名和云打包时填写的不一致形成的app

下面写一下申请流程ui

  • 注册高德开放平台会员
  • 建立新应用

 

 

  • 在应用下建立key

 

这里安全码SHA1,咱们能够用官方给的  BA:AD:09:3A:82:82:9F:B4:32:A7:B2:8C:B4:CC:F0:E9:F3:7D:AE:58spa

在DCloud公用证书主要信息中有,以下.net

Alias name: hbuilder  
Creation date: 2014-9-29  
Entry type: PrivateKeyEntry  
Certificate chain length: 1  
Certificate[1]:  
Owner: CN=DH, OU=数字天堂(北京)网络技术有限公司, O=数字天堂(北京)网络技术有限公司, L=海淀, ST=北京, C=86  
Issuer: CN=DH, OU=数字天堂(北京)网络技术有限公司, O=数字天堂(北京)网络技术有限公司, L=海淀, ST=北京, C=86  
Serial number: 5174dc8b  
Valid from: Mon Apr 22 14:45:31 CST 2013 until: Sun Aug 23 14:45:31 CST 3012  
Certificate fingerprints:  
         MD5:  59:20:1C:F6:58:92:02:CB:2C:DA:B2:67:52:47:21:12  
         SHA1: BA:AD:09:3A:82:82:9F:B4:32:A7:B2:8C:B4:CC:F0:E9:F3:7D:AE:58  
         SHA256: D7:5C:1F:A2:B9:AE:86:7C:E6:88:A8:AD:C6:DE:AC:7C:D6:BA:96:F4:3A:75:1F:D1:0A:20:0F:A5:97:4A:C6:36  
Signature algorithm name: SHA1withRSA  
Subject Public Key Algorithm: 1024-bit RSA key

详细请看 Android平台云端打包证书使用说明3d

 

说一下包名PackageName,大部分人会在这里出错,由于有格式限制,咱们通常写这种格式io.dcloud.hbuilder这种格式,可是无论写成什么,必定要和App云端打包时的安卓包名一致,注意,必定不要写成uniapp的appID(__UNI_FDXXXXX)code

 

 

 

 

  •  将生成的key填写到manifest.json --> App SDK配置中
相关文章
相关标签/搜索