HarmonyOS 鸿蒙Next 引用地图MapComponent组件,地图没有展示出来
HarmonyOS 鸿蒙Next 引用地图MapComponent组件,地图没有展示出来
我在组件中,直接引入了官方这段代码,但是页面上没有任何效果,空白的,也没有报错
import { MapComponent, mapCommon, map } from '@kit.MapKit';
import { AsyncCallback } from '@ohos.base';
@Entry
@Component
struct HuaweiMapDemo {
private TAG = "HuaweiMapDemo";
private mapOption?: mapCommon.MapOptions;
private callback?: AsyncCallback<map.MapComponentController>;
private mapController?: map.MapComponentController;
aboutToAppear(): void {
// 地图初始化参数,设置地图中心点坐标及层级
this.mapOption = {
position: {
target: {
latitude: 39.9,
longitude: 116.4
},
zoom: 10
}
};
// 地图初始化的回调
this.callback = async (err, mapController) => {
if (!err) {
// 获取地图的控制器类,用来操作地图
this.mapController = mapController;
this.mapController.on("mapLoad", () => {
console.info(this.TAG, `on-mapLoad`);
});
}
};
}
build() {
Stack() {
// 调用MapComponent组件初始化地图
MapComponent({ mapOptions: this.mapOption, mapCallback: this.callback }).width('100%').height('100%');
}.height('100%')
}
}
更多关于HarmonyOS 鸿蒙Next 引用地图MapComponent组件,地图没有展示出来的实战教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
1、地图服务需要开通AGC,配置Client ID,可以参考以下文档
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/appgallery-connect-0000001751989088
2、检查一下module.json里面有没有做以下配置:、
"metadata": [
// 配置如下信息
{
"name": "client_id",
"value": "110799233"
},
],
"requestPermissions":[
{
"name" : "ohos.permission.INTERNET",
},
{
"name": "ohos.permission.LOCATION",
"reason": "$string:EntryAbility_desc",
"usedScene": {
"abilities": [
"EntryAbility"
],
"when": "always"
}
},
{
"name": "ohos.permission.APPROXIMATELY_LOCATION",
"reason": "$string:EntryAbility_desc",
"usedScene": {
"abilities": [
"EntryAbility"
],
"when": "always"
}
}
],
更多关于HarmonyOS 鸿蒙Next 引用地图MapComponent组件,地图没有展示出来的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
针对HarmonyOS 鸿蒙Next 引用地图MapComponent组件但地图没有展示出来的问题,以下是一些可能的解决方案:
-
检查配置:
- 确保在AppGallery Connect(AGC)中已经开启了地图服务开关,并检查ClientID、签名和地图API是否已正确配置。
- 检查module.json5文件中metadata节点下的clientid是否写正确,需要直接写client_id的信息,不能通过$符引用资源文件中的值。
-
检查签名证书:
- 确保当前的签名证书指纹是手动签名的,且与AGC上配置的证书指纹一致。
- 签名证书配置方式需选择“SHA256公钥指纹”。
-
检查权限:
- 确保应用已授予必要的权限,包括网络权限和定位权限。
-
检查组件参数:
- 确认地图组件的初始化参数是否正确,包括中心点坐标、缩放层级等。
-
使用真机测试:
- 由于模拟器可能不支持所有华为服务API,包括地图服务,建议使用真机进行测试。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html