uniapp开发ios应用获取定位遇到的问题?

uniapp开发ios应用获取定位遇到的问题?

DansRoh Lv4

问题描述

在使用uniapp开发ios应用时,有个功能需要获取自己的定位信息,使用的uni.getLocation()

在开发阶段 运行到手机调试 时能正常获取到位置,但在云打包成ipa后安装到手机,发现没有获取到位置,当时已经配置好了ios的权限获取以及 sdk调用系统定位的权限,如下:

manifest.json文件中配置

错误的配置

问题解决

  • 在sdkConfigs下加上amap的配置

正确的配置

原因

Android由于谷歌服务被墙,或者手机上没有GMS,想正常定位就需要向高德等三方服务商申请SDK资质,获取AppKey。否则打包后定位就会不准。云打包时需要在manifest的SDK配置中填写 Appkey。在 manifest 可视化界面有详细申请指南,详见:申请指南

离线打包自行在原生工程中配置。注意包名、appkey、证书信息必须匹配。真机运行可以正常定位,是因为真机运行基座使用了DCloud向高德申请的sdk配置,打包后必须由开发者自己申请。如果手机自带GMS且网络环境可以正常访问google定位服务器,此时无需在 manifest 填写高德定位的 sdk 配置。

参考 uniapp获取位置指南

  • 标题: uniapp开发ios应用获取定位遇到的问题?
  • 作者: DansRoh
  • 创建于 : 2024-01-06 00:00:00
  • 更新于 : 2024-06-24 17:16:39
  • 链接: https://blog.shinri.me/2024/01/06/16_uniapp开发ios应用获取定位的问题/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论
此页目录
uniapp开发ios应用获取定位遇到的问题?