HBuilderX 5.13+ 推荐使用本地 Pod 集成定位模块。系统定位使用 Geolocation,百度定位使用 Geolocation-Baidu,高德定位使用 Geolocation-Gaode,腾讯定位使用 Geolocation-Tencent。 手动集成时再参考下方依赖表。

# 百度定位

# 将百度定位模块依赖库及资源添加到工程

依赖库 系统库 依赖资源
libBaiduLocationPlugin.a、libBaiduKeyVerify.a、liblibGeolocation.a、libssl.a、libcrypto.a、BaiduMapAPI_Utils.framework、BaiduMapAPI_Base.framework、BaiduMapAPI_Search.framework、BMKLocationKit.framework libc++.tbd、libsqlite3.0.tbd、SystemConfiguration.framework、Security.framework、CoreLocation.framework、CoreTelephony.framework

# 帐号配置

1.申请Appkey,如果没有appkey将会导致地图显示不出 参考百度地图Appkey申请章节

2.打开Info.plist文件找到baidu项,如果没有按图片中的格式添加该项,在下图中的红色区域输入申请的Appkey 注意info.plist中Bundle identifier要和你输入的安全码一致

# 隐私权限配置

打开Info.plist文件,然后正确添加下方图片中要求的配置

# 高德定位

# 将高德定位模块依赖库及资源添加到工程

依赖库 系统库 依赖资源
libAMapLocationPlugin.a、liblibGeolocation.a、AMapFoundationKit.framework、AMapLocationKit.framework libc++.tbd、libz.tbd、ExternalAccessory.framework、GLKit.framework、security.framework、CoreTelephony.framework、SystemConfiguration.framework

# 帐号配置

1.申请Appkey,如果没有appkey将会导致地图显示不出 参考高德地图Appkey申请章节

2.打开Info.plist文件找到amap项,如果没有按图片中的格式添加该项,在下图中输入申请的appkey

# 隐私权限配置

打开Info.plist文件,然后正确添加下方图片中要求的配置

# 腾讯定位

HBuilderX 4.31+ 支持腾讯定位。HBuilderX 5.13+ 推荐使用本地 Pod 集成。

# 使用本地 Pod 集成

在 Podfile 的 uniapp_subspecs 中添加腾讯定位模块:

uniapp_subspecs = [
  'Core',
  'Geolocation-Tencent'
]

只需添加 Geolocation-Tencent,它会自动依赖 GeolocationUTS,并引入腾讯定位所需的 framework 及系统库,无需在 uniapp_subspecs 中重复添加这两个依赖模块。

uniapp_config.rb 中配置腾讯位置服务 API Key:

UNIAPP_PLIST_VALUES = {
  map_tencent: {
    api_key: '腾讯位置服务 API Key'
  }
}.freeze

配置完成后执行:

pod install --no-repo-update

# 手动添加腾讯定位模块依赖库及资源

依赖库 系统库 依赖资源
uniGetLocationTencentUni1.framework、TencentLBS.framework、liblibGeolocation.a、DCloudUTSFoundation.framework CoreLocation.framework、CoreTelephony.framework、SystemConfiguration.framework、libz.tbd

# 帐号配置

  1. 腾讯位置服务控制台创建应用并申请 Key,配置与 App 一致的 Bundle Identifier。

  2. 在 Info.plist 中添加以下配置:

<key>TencentLBSAPIKey</key>
<string>腾讯位置服务 API Key</string>

# 隐私权限配置

打开Info.plist文件,然后正确添加下方图片中要求的配置:

iOS 14 及以上系统如需临时使用精确定位,还需要配置 NSLocationTemporaryUsageDescriptionDictionary。其中的 PurposeKey 需要与调用临时精确定位授权时使用的 key 保持一致:

<key>NSLocationTemporaryUsageDescriptionDictionary</key>
<dict>
  <key>PurposeKey</key>
  <string>用于提供精确定位服务</string>
</dict>

# 系统定位

# 将系统定位模块依赖库及资源添加到工程

依赖库 系统库 依赖资源
liblibGeolocation.a Foundation.framework、CoreLocation.framework

# 隐私权限配置

打开Info.plist文件,然后正确添加下方图片中要求的配置