HarmonyOS鸿蒙Next中code:9568320 error: no signature file
HarmonyOS鸿蒙Next中code:9568320 error: no signature file 应用已经申请了sit环境的调试证书,已经有了相关配置,打成app 就提示no signature file ,直接点击开发工具的run是可以正常运行的 怎么排查哪里出问题了呢?

更多关于HarmonyOS鸿蒙Next中code:9568320 error: no signature file的实战教程也可以访问 https://www.itying.com/category-93-b0.html
您好,根据报错信息可知,缺少签名信息,是签名文件或签名信息异常导致。可根据以下场景进行排查:
- 场景一:检查工程级build-profile.json5文件中是否配置signingConfigs签名配置,并且products中指定了对应的signingConfig。
- 场景二:DevEco Studio缓存异常可能导致签名失效,尝试清理缓存后重启是否正常。
- 执行菜单栏操作:Build -> Clean Project -> File -> Invalidate Caches,然后重启DevEco Studio。
- 删除本地签名目录(路径在签名页面可见),重新运行自动签名。
- 场景三:排查证书是否使用正确。 保证证书类型使用正确,调试包使用调试证书,正式发布包使用发布证书,发布证书需要在AppGallery Connect创建获取
【背景知识】
- 配置调试签名:针对开发调试场景,DevEco Studio为开发者提供了自动签名方案,帮助开发者高效进行调试。此外,也可以选择手动签名方式生成调试签名。
- 9568320错误码参考:9568320 签名文件不存在。
更多关于HarmonyOS鸿蒙Next中code:9568320 error: no signature file的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
请开发者根据实际场景选择自动签名或者手动签名,例如无法连接互联网的情况下推荐使用手动签名方式,详情参考使用场景说明。
方法一. 使用自动签名。在连接设备后,重新为应用进行签名。
方法二. 使用手动签名,请参考手动签名。
方法三. 如果安装APP时报这个错误码,需要在工程级build-profile.json5文件里配置packOptions的appWithSignedPkg属性为true,保证APP里的HAP/HSP有签名。
尊敬的开发者您好,调试证书和开发证书需要分别配置和切换,可以参考我的这篇实战文章:
另外手动配置签名可以再结合官方文档指引进行申请:
这个现象可以按“Run 使用了一套可运行签名,但 Build App 打出来的包没有带上对应签名”来排查。no signature file 通常不是设备安装残留问题,而是构建产物本身未被正确签名。
建议按这个顺序看:
- 检查工程根目录
build-profile.json5的app.products,当前打包使用的 product 是否明确配置了signingConfig,并且名称和signingConfigs里的name完全一致,例如:
"products": [
{
"name": "default",
"signingConfig": "stg",
"runtimeOS": "HarmonyOS"
}
]
-
检查
app.signingConfigs里的stg材料是否完整:storeFile、storePassword、keyAlias、keyPassword、profile、certpath、signAlg都要有效,路径建议用工程相对路径,避免迁移电脑后指向旧机器路径。 -
如果是多模块/多 HAP,确认所有参与打包的模块都应用到同一个 product,且没有某个模块 target 没被签名配置覆盖。重点看模块的
targets.applyToProducts和工程products的对应关系。 -
Clean 后重新构建:
Build > Clean Project,必要时删除工程下的build、各模块build和.hvigor缓存,再重新Build App Pack(s)。 -
Run 能成功不代表打包配置一定正确,因为 Run 可能走 DevEco 自动签名或当前调试配置;Build App 会严格按 product/signingConfig 输出产物。先把“当前构建 product 绑定到 stg 签名”确认下来,基本就能定位到问题点。
还是推荐用自动签名

- 打开DevEco Studio,在顶部菜单栏选择“File > Project Structure”,进入“Project Structure”界面。
- 导航选择“Project”,点击“Signing Configs”页签,取消“Automatically generate signature”勾选项,配置工程的签名信息,完成后点击“OK”。
- Store file:密钥文件,选择之前准备好的密钥.p12文件。
- Store password:密钥库密码,需与之前生成密钥设置的密钥库密码保持一致。
- Key alias:密钥的别名信息,需与之前生成密钥设置的别名保持一致。
- Key password:密钥的密码,需与之前生成密钥设置的密码保持一致。
- Sign alg:固定设置为“SHA256withECDSA”。
- Profile file:选择准备好的指定设备发布Profile。
- Certpath file:选择准备好的发布证书.cer文件。

这里有官方文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-signing#section341949115713
取消掉自动签名的对钩!
检查一下项目目录下的build-profile.json5
"products": [
{
"name": "default",
"signingConfig": "default",
"compatibleSdkVersion": "6.0.1(21)",
"runtimeOS": "HarmonyOS",
"buildOption": {
"strictMode": {
"caseSensitiveCheck": true,
"useNormalizedOHMUrl": true
}
}
},
查看需要打包的app对应的poducts下的产品对应的signingConfig是不是stg
找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17,
这个报错通常不是证书本身的问题,而是构建配置(build-profile.json5)的引用逻辑出了错。
之所以 “Run”(运行)正常,是因为 DevEco Studio 的 Run 按钮默认使用的是 IDE 自动生成的调试证书(Automatic Signing),它会绕过你手动配置的签名信息。而当你选择 “Build”(打包)时,系统会严格按照配置文件执行。

- 检查 Products 是否关联了签名配置(最常见原因)
"products": [
{
"name": "default",
"signingConfig": "sit", // ✅ 必须加上这一行,名称必须与 signingConfigs 里的 name 一致
"compileSdkVersion": 11,
"compatibleSdkVersion": 11,
"runtimeOS": "HarmonyOS"
}
]
- 检查文件路径的准确性
…
- 清理构建缓存(必做)
可执行以下操作:
- 点击顶部菜单栏 Build > Clean Project。
- 手动删除工程根目录下的 build 文件夹和 entry/build 文件夹(如果存在)。
- 重新点击 Build > Build App Pack(s)。
检查工程级build-profile.json5文件配置准确,保证products中指定了对应的signingConfig。另外产品的名称,必须存在name为"default"的product。


错误码9568320表示应用签名文件缺失。在HarmonyOS Next中,打包或安装HAP时需包含有效的签名文件(如.p7b或.p12)。请检查签名配置中证书文件路径是否有效,或重新生成签名文件并正确关联。
错误码9568320 “no signature file” 表示构建 APP 包时缺少有效的签名文件。在 DevEco Studio 中直接点击 Run 可以运行,是因为 Run 使用的是自动生成的调试签名,而打包 APP(如 Build Hap(s)/APP(s))则需要手动配置签名。
请检查:签名配置是否正确绑定到当前构建变体。前往 File > Project Structure > Signing Configs,确认已添加 SIT 环境的调试证书(.p12)和对应的 Profile 文件,并在 Build Variants 中将该签名配置应用到打包所用的变体(通常是 release)。若命令行打包,需确保 --sign-alg、--profile-file、--store-file 等参数完整且正确。


