HarmonyOS 鸿蒙Next:MapKit在模拟器上不显示

HarmonyOS 鸿蒙Next:MapKit在模拟器上不显示 证书指纹 和 添加公钥指纹 都已添加,应用client id也已经添加,地图不显示,怎么处理?

cke_172.png

cke_462.png


更多关于HarmonyOS 鸿蒙Next:MapKit在模拟器上不显示的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

麻烦按以下步骤检查下地图服务,特别是签名证书指纹那部分。

  1. 一般没有展示地图,可能和没有配置SHA256指纹证书配置,网络,定位权限,没有打开地图服务等有关系,如果刚配置完权限等,需要24h生效,(可以将手机系统时间往后设置24h)。
  2. module.json5文件中 metadata节点下 clientid 写正确—需要在里面直接写client_id的信息,不能通过$符引用资源文件中的值,当前无法解析这种引用方式;
  3. 需要检查一下当前的签名证书指纹是否也是自动签名的,需要改成手动签名需要和AGC上配置的证书指纹一致 签名证书使用 这个选项中的 配置方式 “选择SHA256公钥指纹”

a. 生成配置指纹

b. 配置证书指纹( 地图需要手动签名且需要和AGC上配置的证书指纹一致)

再检查一下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"
      }
    }
  ],
}

其中Client ID详细可参考如下文档,一个是项目的Client ID,一个是项目下应用的Client ID

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/call-preparations-0000001753382178#section166780291431

在配置地图时间,module.json5中配置的是应用的Client ID。

更多关于HarmonyOS 鸿蒙Next:MapKit在模拟器上不显示的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


找到问题了,模拟器不支持mapkit,怎么配置都没用。[1]

HarmonyOS鸿蒙Next中的MapKit在模拟器上不显示可能是由于以下原因:

  1. 模拟器环境问题:鸿蒙模拟器可能未正确配置或缺少必要的地图服务支持。确保使用的是最新版本的鸿蒙模拟器,并且模拟器支持MapKit功能。

  2. 地图服务未激活:MapKit可能需要特定的地图服务激活密钥或配置文件。检查是否已在项目中正确配置了地图服务的API密钥或其他必要参数。

  3. 网络连接问题:MapKit依赖网络加载地图数据。检查模拟器的网络连接是否正常,确保可以访问地图服务提供的网络资源。

  4. 权限问题:应用程序可能需要特定的权限才能使用地图服务。确保在应用程序的配置文件中已声明了必要的地图相关权限。

  5. API调用问题:检查代码中MapKit的调用是否正确,确保初始化、地图视图的加载等步骤没有错误。

  6. 模拟器限制:某些模拟器可能对MapKit的支持有限,建议在真机设备上测试以确认问题。

  7. SDK版本问题:使用的鸿蒙SDK版本可能与MapKit不兼容。确保使用的是与鸿蒙Next兼容的最新SDK版本。

  8. 日志信息:查看鸿蒙IDE中的日志输出,检查是否有与MapKit相关的错误信息,以便进一步定位问题。

以上可能是导致MapKit在鸿蒙Next模拟器上不显示的原因。

回到顶部