HarmonyOS鸿蒙Next中使用手动签名报错Error Message:The bundleName in app.json does not match the bundleName in the generated SigningConfigs如何解决?
HarmonyOS鸿蒙Next中使用手动签名报错Error Message:The bundleName in app.json does not match the bundleName in the generated SigningConfigs如何解决? 使用手动签名报错Error Message:The bundleName in app.json does not match the bundleName in the generated SigningConfigs如何解决?

更多关于HarmonyOS鸿蒙Next中使用手动签名报错Error Message:The bundleName in app.json does not match the bundleName in the generated SigningConfigs如何解决?的实战教程也可以访问 https://www.itying.com/category-93-b0.html
该错误源于app.json中的bundleName与签名配置中的bundleName不一致。请检查并确保两个文件中的bundleName完全一致,包括大小写。
更多关于HarmonyOS鸿蒙Next中使用手动签名报错Error Message:The bundleName in app.json does not match the bundleName in the generated SigningConfigs如何解决?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
这个错误表明你的应用配置文件 app.json5 中的 bundleName 与签名配置文件中指定的包名不匹配。这是手动签名配置中的常见问题。
根本原因:
HarmonyOS应用的签名配置文件(通常为 signature 目录下的 .csr、.cer、.p7b 等文件)在生成时,其内部信息已经绑定了一个特定的 bundleName(应用包名)。当你手动配置签名时,DevEco Studio 会读取这些签名文件中的包名信息,并与你项目的 app.json5 文件里声明的 bundleName 进行比对。两者必须完全一致,否则就会报此错误。
解决方案:
请按以下步骤检查和修正:
-
核对
app.json5文件中的bundleName: 打开项目根目录下的AppScope > app.json5文件。找到"bundleName"字段,确认其值。例如:"bundleName": "com.example.myapplication"。请完整、准确地记录这个值。 -
核对签名配置中的
bundleName:- 打开项目的
build-profile.json5文件。 - 找到
"signingConfigs"配置项,查看你正在使用的手动签名配置(例如"debug"或"release")。 - 确认其中
"signingConfig"下的"bundleName"字段的值。这个值必须与第1步中app.json5里的bundleName一字不差。
- 打开项目的
-
修正不匹配:
- 情况A:
build-profile.json5中的bundleName错误。 这是最常见的情况。直接将build-profile.json5中signingConfigs下的"bundleName"修改为与app.json5中完全相同的字符串。 - 情况B:签名文件本身是为另一个
bundleName生成的。 如果你的签名证书(.p7b)和Profile文件(.cer)是从其他项目复制过来的,或者最初生成时填写的包名与当前项目不同,那么它们就不可用。 你需要为当前项目的bundleName重新生成一套签名文件。 请通过 AppGallery Connect 网站,使用正确的bundleName(即app.json5中的包名)来申请新的调试或发布证书及Profile文件,并替换项目signature目录下的旧文件。
- 情况A:
-
同步与清理构建: 修改并保存配置文件后,点击IDE右上角的 “Sync Now” 同步项目。如果问题依旧,可以尝试 “Build > Clean Project” 清理项目,然后重新构建。
总结关键点:
确保 app.json5 中的 bundleName、build-profile.json5 中 signingConfigs 下的 bundleName 以及生成签名证书时使用的包名,这三者完全一致,即可解决此错误。

