工程配置
1. 权限配置
在module.json5文件中配置HarmonyOS轻量地图SDK所需的相关权限,确保SDK可以正常使用。配置如下:
"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_BUNDLE_INFO"}]
2. 添加百度地图SDK依赖
可通过OpenHarmony三方库中心仓查看百度地图提供的三方库列表以及版本更新情况。
安装过程可采用下面两种方式中的任意一种。
一种是通过命令安装指定版本的三方库,<package_name>换成安装的库名,<version>换成对应的版本
ohpm install @bdmap/<package_name>@<version>
另一种是通过配置文件,触发IDE 的 Sync Now拉取三方库。
在工程的oh-package.json5文件中添加依赖。配置如下:
{"license": "Apache License 2.0","devDependencies": {},"name": "entry","description": "example description","version": "1.0.1","dependencies": {"@bdmap/base": "version","@bdmap/search": "version","@bdmap/map": "version"}}
3. 获取HarmonyOS应用的appIdentifier
注意:请在真机运行下获取appId。使用云真机获取到的appId信息不全,会导致SDK鉴权失败,地图功能无法正常使用。
在Ability中调用如下代码来获取appIdentifier:
/*** 获取appIdentifier*/public getBundleAppIdentifier() {// 根据给定的bundle名称获取BundleInfo。// 使用此方法需要申请 ohos.permission.GET_BUNDLE_INFO权限。let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_SIGNATURE_INFO;try {return bundleManager.getBundleInfoForSelf(bundleFlags).then((data) => {//获取appIdentifierappIdentifier = data.signatureInfo.appIdentifier;console.info('getBundleAppIdentifier successfully. Data: ' + appIdentifier );}).catch(error => {console.error('getBundleAppIdentifier failed. Cause: ' + error.message);});} catch (error) {console.error('getBundleAppIdentifier failed:' + error.message);}}
4. 申请AK
申请所需参数:appIdentifier。联系开放平台。
5.SDK集成说明
百度地图HarmonyOS SDK提供两种集成方式:分体包和组合包。两种方式互斥,开发者需根据业务需求选择其一。
方式一:分体包集成
适用于基础地图功能开发,支持按需引入模块。
• @bdmap/base: 基础库,提供通用API和工具类
• @bdmap/map: 地图可视化模块,依赖base
• @bdmap/search: 检索服务模块,依赖base
• @bdmap/util:工具库模块,依赖base
集成示例:
{"dependencies": {"@bdmap/base": "2.0.2","@bdmap/map": "2.0.2","@bdmap/search": "2.0.2","@bdmap/util": "2.0.2"}}
方式二:组合包集成
适用于驾车导航/步骑行导航功能开发,集成所有基础模块及导航专用接口。
• @bdmap/navi_map: 百度驾车导航SDK,集成base、map、search、util等所有基础功能
• @bdmap/map_walkride_search: 步骑行导航SDK,集成base、map、search、util等所有基础功能
集成示例:
{"dependencies": {"@bdmap/navi_map": "1.0.1"}}
或
{"dependencies": {"@bdmap/map_walkride_search": "2.0.2"}}
1. 互斥性: 分体包与组合包不可同时使用
2. 版本一致性: 同一项目内所有@bdmap/包版本必须保持一致
3. 依赖管理: 组合包已内置所有基础模块,无需额外引入分体包
• 基础地图应用: 使用分体包,按需引入模块
• 导航应用: 使用组合包,获得完整导航能力
上一篇
下一篇
本篇文章对您是否有帮助?