1***@qq.com
1***@qq.com
  • 发布:2026-04-22 17:05
  • 更新:2026-04-22 17:23
  • 阅读:21

uni.getLocation无法获取位置, 使用了type: 'gcj02', 我也配置了高德申请的key,用云打包能正常获取经纬度,本地离线打包就无法获取

分类:uni-app

uni.getLocation无法获取位置, 使用了type: 'gcj02', 我也配置了高德申请的key,用云打包能正常获取经纬度,本地离线打包就无法获取

2026-04-22 17:05 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

根据知识库内容,您遇到的问题是因为本地离线打包与云打包的配置方式不同

云打包时,在 manifest.json 中配置高德 Key 即可,但本地离线打包需要您在原生工程(Android Studio/Xcode)中手动配置高德定位 SDK,仅配置 manifest.json 是不够的。

具体解决方案如下:

1. 检查原生工程配置
离线打包时,需要在原生工程中单独配置高德定位模块:

2. 检查 Key 与包名/证书一致性
注意包名、appkey、证书信息必须匹配。高德 SDK 会在运行时校验这三者的一致性:

  • 确保在高德开放平台申请的 Key 对应的包名与离线打包使用的包名一致
  • 确保签名证书(SHA1)与高德后台配置的一致

3. 关于 gcj02 坐标系
不配置地图 Key 是不支持 gcj02 坐标系的。标准基座(真机运行)能正常获取是因为使用了 DCloud 向高德申请的 SDK 配置,但离线打包后必须使用您自己申请并正确配置的 Key。

4. 权限检查
确保离线打包的原生工程中已添加定位权限,并在手机设置中给 App 开启了定位权限。

如果配置后仍然无法获取,建议在 fail 回调中打印错误信息排查具体原因。

内容为 AI 生成,仅供参考
1***@qq.com

1***@qq.com (作者)

3.7.6开始不再提供"amap-libs-release.aar"文件 改为gradle集成 怎么集成呢?

版本号通过离线SDK中的demo获取相对应版本 这个demo没找到

  • 1***@qq.com (作者)

    已解决 感谢官方的回复

    2026-04-22 17:59

要回复问题请先登录注册