HarmonyOS 鸿蒙Next中集成HMS Core地图服务不显示地图问题

HarmonyOS 鸿蒙Next中集成HMS Core地图服务不显示地图问题 【问题描述】
关于华为HMS-地图服务不显示地图的问题。
背景:集成华为地图服务运行后页面不显示地图,运行app后不展示地图报错MapsInitializer is not initialized。

【解决方案一】
1. 先检查一下agconnect-services.json此文件是否放到了主工程模块下。

2. 如果第1步没有问题,那么请检查agconnect-services.json此文件中是否包含api_key信息。

3. 如果agconnect-services.json文件中未包含api_key信息, 那么需要在执行了初始化代码之后,紧接着执行设置Api_key的代码, 如果文件中包含了api_key信息, 那么就不需要再执行设置Api_key的代码了。即便执行的话, 也要保证Api_key有效。

MapsInitializer.initialize(this);
//如果agconnect-services.json中的“api_key”字段值为空,请将该字段替换为api_key字段值。
//如果agconnect-services.json中的“api_key”字段值不为空,那么可以将此行代码屏蔽掉,不需要执行
MapsInitializer.setApiKey(MapUtils.API_KEY);

4. 另外在加载地图之前 一定要通过MapsInitializer.initialize(this);这行代码 初始化地图。

5. 如果前面的步骤都没有问题的话,那么可以打开Demo的MainActivity.class类。
将setApiKey()屏蔽 , 如果不想屏蔽掉,那么可以将API_KEY的值 修改为自己的。

或者将API_KEY修改为自己的API_KEY值。

【解决方案二】
1. 可以将agconnect-services.json文件复制到官方提供的Demo中, 复制完之后 可以将官方Demo中的applicationid改为与agconnect-services.json文件中的package_name保持一致即可。

地图加载问题重点:
1. 确保App应用的证书指纹与AGC平台配置的证书指纹保持一致。
2. 确保项目的主模块下有agconnect-services.json文件
3. 初始化SDK这一步,可以放到setContentView之前。

4. 如果提示【您的设备未安装最新版本的HMS Core,FlywindMap无法正常运行。】
1)地图服务自6.3.1.304版本开始 , 移除了下载引导HMS Core Apk的能力。如果设备中未安装HMS Core Apk应用内,那么确实会有这样的提示
2)可以检查一下设备中是否有HMS Core Apk。如果没有可以安装一个HMS Core Apk
3)或者可以使用低于6.3.1.304的版本。
参考链接


更多关于HarmonyOS 鸿蒙Next中集成HMS Core地图服务不显示地图问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

体验

更多关于HarmonyOS 鸿蒙Next中集成HMS Core地图服务不显示地图问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中集成HMS Core地图服务时,若地图不显示,可能原因包括:

  1. API Key未正确配置,需在agconnect-services.json中检查并确保API Key正确;

  2. 网络权限未开启,需在config.json中添加<uses-permission ohos:name="ohos.permission.INTERNET"/>

  3. 地图服务未初始化,确保在应用启动时调用MapKitInitializer.setApiKey()进行初始化;

  4. 设备网络连接问题,检查设备网络是否正常。

回到顶部