HarmonyOS鸿蒙Next中地图服务自动签名,编译器报错The app corresponding to this bundle name has not been recognized as aHarmonyOS app/atomie service

HarmonyOS鸿蒙Next中地图服务自动签名,编译器报错The app corresponding to this bundle name has not been recognized as aHarmonyOS app/atomie service 问题描述:我在集成地图服务时,使用了DevEco自动签名的方式开通地图服务,发现签名报错:The app corresponding to this bundle name has not been recognized as aHarmonyOS app/atomie service Please switch to another app for signing。但是不影响本地真机调试,只是调用地图的时候看日志有 The app does not have map permission。后面在AGC平台上新创建了一个应用,然后就没问题了,想知道这个报错,具体是什么原因导致的呢?

问题现象:

cke_13854.png

尝试解决方案:排查了当前本地和AGC的应用包名一致,AGC对应服务也已开启。


更多关于HarmonyOS鸿蒙Next中地图服务自动签名,编译器报错The app corresponding to this bundle name has not been recognized as aHarmonyOS app/atomie service的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

开发者你好,需要确认两个信息: 1、在IDE签名页面,点击底部的 Enable open capabilities 右侧的加号,选择在AGC平台对应的应用,然后再选择对应的地图服务,在选择完成之后,会在底部显示一个Map Kit已选择的样式。请确认下您这边是否已选择; 2、使用你的开发者账号登录AGC平台,在首页选择 证书、APP ID和Profile–左侧APP ID 页面,查看是否有最新添加的测试应用、对应的包名以及新生成的APPID。

更多关于HarmonyOS鸿蒙Next中地图服务自动签名,编译器报错The app corresponding to this bundle name has not been recognized as aHarmonyOS app/atomie service的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


开发者你好,当您添加地图服务时,如果对应的AGC应用是在24年12月30日前创建且未上架过的,用这种应用执行真签名,就会报这个错。

此时去AGC上新建一个应用,用新应用去签名就没有问题。

就是点击Enable open capabilities右侧的加号时,出现的这个报错,AGC平台对应位置也有该测试应用信息,而且后续新建了一个应用后,这个问题就没有了

开发者你好,需要你这边确认下,之前绑定的应用是否为HarmonyOS 应用/元服务。

自动签名也需要有一个在AGC平台对应的应用。

原本AGC平台上就创建有一个应用,对应包名也是检查过,没有问题

该报错是由于应用包名未在华为开发者联盟注册为HarmonyOS应用或原子化服务所致。需在AppGallery Connect中创建对应HarmonyOS项目,并确保包名与工程配置完全一致。检查项目的app.json5或module.json5文件中的bundleName字段是否与AGC注册信息匹配。

这个报错的根本原因是:用于自动签名的应用包名(bundleName)在AGC(AppGallery Connect)平台上尚未被正确识别或注册为HarmonyOS应用或原子化服务。

具体分析如下:

  1. 核心机制:当你在DevEco Studio中使用“自动签名”功能开通地图服务时,IDE会尝试将你项目配置文件(module.json5)中声明的bundleName(应用包名)与AGC平台上的应用进行关联,并为该应用自动申请和配置签名证书以及开通相关服务(如地图服务)。

  2. 报错原因:出现“The app corresponding to this bundle name has not been recognized as a HarmonyOS app/atomie service”提示,表明AGC平台的后台系统中,没有找到与当前项目bundleName完全匹配且类型为HarmonyOS应用/原子化服务的已创建记录。这通常发生在以下几种情况:

    • 应用未在AGC创建:你尚未在AGC控制台为这个bundleName创建HarmonyOS应用项目。
    • 应用类型不符:在AGC创建应用时,选择的可能是“快应用”或其他类型,而非“HarmonyOS应用”或“原子化服务”。
    • 平台同步延迟:虽然创建了应用,但AGC平台的数据同步可能存在短暂延迟,导致自动签名时无法立即识别。
    • 包名不精确匹配:项目中的bundleName与AGC平台上创建的应用包名存在大小写、字符等任何差异,都无法匹配。
  3. 为何本地调试正常但地图无权限:本地真机调试使用的是调试证书和临时授权,允许应用安装和基础运行,因此编译和安装不会中断。但是,地图服务等需要云端授权和签名的能力,必须依赖在AGC正式注册并开通了该服务的应用配置。由于自动签名失败,地图服务权限(map permission)未能成功开通,导致调用地图API时因缺乏有效授权而失败。

  4. 你后续操作成功的解释:你在AGC平台上新创建了一个应用,这个操作的本质是在AGC正式注册了一个与你项目bundleName匹配的HarmonyOS应用实体。之后,无论是通过自动签名还是手动配置,这个应用实体都能被正确关联,从而可以成功开通地图服务并获取相应权限。

总结:该报错是HarmonyOS应用开发中服务开通流程的一个验证环节。它要求任何需要云端服务(如地图、推送、登录等)的应用,其包名必须先在AGC平台完成HarmonyOS类型应用的注册。自动签名失败即表明此前提条件未满足。你通过新建AGC应用解决了问题,这证实了根本原因在于包名未在平台侧有效注册。

回到顶部