【FAQ】HarmonyOS SDK 闭源开放能力 —Map Kit

1.问题描述

在App中供用户在地图上选择地址,目前在使用Map Kit结合geolocationManager逆地理编码时获取的地址信息描述不准确,希望能提供相应的Demo参考。

解决方案

Demo代码示例:

复制代码
getLocation() {
let requestInfo: geoLocationManager.LocationRequest = {
'priority': geoLocationManager.LocationRequestPriority.FIRST_FIX,
'scenario': geoLocationManager.LocationRequestScenario.UNSET,
};
try {
// 获取当前位置
geoLocationManager.getCurrentLocation(requestInfo).then((data) => {
this.lat = data.latitude;
this.lon = data.longitude;
let info: geoLocationManager.ReverseGeoCodeRequest = {
// 获取当前位置的纬度
latitude: data.latitude,
// 获取当前位置的经度
longitude: data.longitude,
// 获取次数大于10次以便获得cityCode
maxItems: 10
}
// 使用逆地理编码
geoLocationManager.getAddressesFromLocation(info).then((code) => {
this.message= JSON.stringify(code);
console.log("here is resgeo code :" + JSON.stringify(code))
})
});
} catch (exception) {
console.log("zzzzz " + exception)
}
}

从以上的示例代码分析,调用的是Map kit的getCameraPosition接口,而geolocationManager是Location Kit的逆地理编码接口。华为地图使用的坐标类型在国内站点,中国大陆、中国香港和中国澳门使用GCJ02坐标系,location定位功能默认使用WGS84类型,坐标系不一样,所以会有偏差,建议保持统一,直接调用地图的逆地理接口site.reverseGeocode。

2.问题描述

升级后系统版本:2.0.0.59(SP3DEVC00E59R6P1log),操作系统: HarmonyOS NEXT Developer Preview 1,发现地图不显示了。在AppGallery Connect中开通了地图服务并将Client ID配置到module.json5文件中,为什么还是无法显示地图?

解决方案

请从以下几点排查原因:

  1. 开通相关服务存在一定的延迟,一般有10分钟左右。

  2. module.json5文件中metadata节点下clientid是否正确:请在里面直接写入client_id,不能通过$符引用资源文件中的值,当前无法解析这种引用方式。

  3. 签名证书配置方式 "选择SHA256公钥指纹'',请参考:https://developer.huawei.com/consumer/cn/doc/app/agc-help-signature-info-0000001628566748#section5181019153511。

3.问题描述

使用Developer Preview1 Map Kit的地图呈现和位置搜索功能,出现以下问题:

  1. 地图呈现:没有出现地图内容。

  2. 位置搜索功能:返回 err ={"code":1002600004,"name":"The Map permission is not enabled.","message":"The Map permission is not enabled."}

  3. HarmonyOS Next Developer Preview(2.0.0.33)安装 Preview1 SDK的应用报错,需要升级手机系统?

  4. 模拟器能不能使用地图?

  5. IDE中自动生成的debug签名能不能使用地图相关功能?

解决方案

1/2/5. 使用Map Kit功能既需打开配置服务开关,还需配置应用签名证书指纹,具体配置方法请参考:https://developer.huawei.com/consumer/cn/doc/app/agc-help-signature-info-0000001628566748#section5181019153511。

  1. Map Kit能力从Preview1开始支持,设备(2.0.0.33)版本是旧版本,不配套,请升级。

  2. 模拟器暂时是不支持地图的。

相关推荐
不羁的木木41 分钟前
ArkWeb实战学习笔记01-核心概念与架构设计
笔记·学习·harmonyos
Goway_Hui1 小时前
【鸿蒙原生应用开发--ArkUI--010】Recipe-app 菜谱应用开发教程
华为·harmonyos
●VON1 小时前
鸿蒙 BodyAR 实战:基于人体骨骼追踪的体感运动计数器开发全解
华为·ar·harmonyos·鸿蒙·新特性
Davina_yu2 小时前
页面路由导航:Router与Navigation组件的跳转传参(7)
harmonyos·鸿蒙·鸿蒙系统
Ww.xh2 小时前
鸿蒙WebView IPC防伪造请求方案
华为·harmonyos
大雷神4 小时前
第25篇|Surface 预览控制:ArkUI 页面如何接住相机画面
harmonyos
大雷神4 小时前
第24篇|相机权限和设备枚举:先判断能力再打开预览
harmonyos
川石课堂软件测试4 小时前
使用mock进行接口测试教程
数据库·python·功能测试·测试工具·华为·单元测试·appium
Goway_Hui5 小时前
【鸿蒙原生应用开发--ArkUI--003】TodoApp - 待办事项应用教程
华为·harmonyos
想你依然心痛5 小时前
HarmonyOS 6(API 23)智能体驱动的沉浸式AR航天器装配工坊
华为·ar·harmonyos·智能体