HarmonyOS 鸿蒙Next 打包后的app,如何实现release签名

发布于 1周前 作者 bupafengyu 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 打包后的app,如何实现release签名

相关证书已经申请完成,打包后的app,如何进行release签名?有相关文档吗?

2 回复

可以用命令行工具签名  相应的jar包在 /Applications/DevEco-Studio.app/Contents/sdk/default/openharmony/toolchains/lib/hap-sign-tool.jar(mac系统)

java -jar hap-sign-tool.jar sign-app -keyAlias "OpenHarmony Application Release" -signAlg "SHA256withECDSA" -mode "localSign" -appCertFile "OpenHarmonyApplication.pem" -profileFile "ohos_provision_release.p7b" -inFile "entry-default-unsigned.hqf" -keystoreFile "OpenHarmony.p12" -outFile "entry-signed-release.hqf" -keyPwd "123456" -keystorePwd "123456" -signCode 1

  • keyAlias:这是密钥的别名。
  • appCertFile:这是申请的调试证书文件,其格式为 .cer 1。
  • profileFile:这是申请的调试Profile文件,其格式为 .p7b 1。
  • inFile:这是通过hvigor打包生成的未携带签名信息的HAP文件 1。
  • keystoreFile:这是密钥库文件,其格式为 .p12 1。
  • outFile:这是经过签名后生成的携带签名信息的HAP文件 1。
  • keyPwd 和 keystorePwd:这些分别是密钥和密钥库的口令。
  • signCode:这个参数用于指定是否开启代码签名,1表示开启,0表示不开启 1。从NEXT Beta1版本开始,需要开启代码签名,否则将导致构建出的包无法安装到设备上 1。

更多关于HarmonyOS 鸿蒙Next 打包后的app,如何实现release签名的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next环境中,为打包后的APP实现Release签名,可以通过以下步骤完成:

  1. 准备签名文件:确保你已有.p12或.jks格式的签名文件,以及对应的签名密码、别名和密码。

  2. 配置签名信息

    • 打开项目的config.json文件。
    • module -> packageConfig下,添加或修改signConfig字段。
    • 填入签名文件路径、别名、密码等必要信息。例如:
      "signConfig": {
        "debug": {
          "storeFile": "",
          "storePassword": "",
          "alias": "",
          "aliasPassword": "",
          "keyAlgorithm": "RSA",
          "digestAlgorithm": "SHA256"
        },
        "release": {
          "storeFile": "path/to/your/signfile.p12",
          "storePassword": "your_store_password",
          "alias": "your_alias",
          "aliasPassword": "your_alias_password",
          "keyAlgorithm": "RSA",
          "digestAlgorithm": "SHA256"
        }
      }
      
  3. 打包APP

    • 使用DevEco Studio或其他构建工具,选择Release模式进行打包。
    • 打包过程中,工具将自动使用配置的签名信息进行签名。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部