HarmonyOS 鸿蒙Next应用打包与发布

HarmonyOS 鸿蒙Next应用打包与发布 HarmonyOS 应用的打包格式是什么?HAP 和 APP 包有什么区别?如何配置应用的签名?如何进行代码混淆保护?如何配置应用的版本号和更新策略?发布到应用市场需要注意哪些事项?(问题来源项目案例整理:https://github.com/heqiyuan35-creator/HydroQuiz.git

4 回复

HarmonyOS 应用打包和发布涉及多个配置环节。

包格式说明

  • HAP (Harmony Ability Package):模块级别的包,一个应用可以包含多个 HAP
  • APP:应用级别的包,包含所有 HAP,用于上架应用市场

签名配置

// build-profile.json5
{
  "app": {
    "signingConfigs": [
      {
        "name": "release",
        "type": "HarmonyOS",
        "material": {
          "certpath": "签名证书路径.cer",
          "storePassword": "密钥库密码",
          "keyAlias": "密钥别名",
          "keyPassword": "密钥密码",
          "profile": "发布profile路径.p7b",
          "signAlg": "SHA256withECDSA",
          "storeFile": "密钥库路径.p12"
        }
      }
    ]
  }
}

代码混淆配置

// entry/obfuscation-rules.txt
-enable-property-obfuscation
-enable-toplevel-obfuscation
-enable-filename-obfuscation
-enable-export-obfuscation
# 保留规则
-keep-property-name
  title
  content
  id

版本配置

// AppScope/app.json5
{
  "app": {
    "bundleName": "com.example.hydroquiz",
    "vendor": "何启源",
    "versionCode": 1000000,
    "versionName": "1.0.0",
    "icon": "$media:app_icon",
    "label": "$string:app_name"
  }
}

发布注意事项

  1. 确保所有权限都有合理的使用说明
  2. 准备应用截图和描述文案
  3. 测试不同设备的兼容性
  4. 检查隐私政策和用户协议
  5. 确保应用图标和名称符合规范

HarmonyOS NEXT应用打包使用HAP格式,通过DevEco Studio构建生成。发布流程需在AppGallery Connect平台完成,包括应用信息配置、证书签名、测试版本上传及审核发布。

关于HarmonyOS Next应用打包与发布的要点如下:

1. 应用打包格式

HarmonyOS应用的标准发布格式是HAP(Harmony Ability Package)。一个应用由一个或多个HAP组成,最终打包成**APP包(Application Package)**进行分发。APP包是HAP的容器,用于应用商店的发布和安装。

2. HAP与APP包的区别

  • HAP:是功能模块包,包含代码、资源、库文件和配置文件,可独立编译和部署。
  • APP包:是完整的应用包,包含一个或多个HAP,以及描述应用整体信息的pack.info文件。用户从应用市场下载安装的是APP包。

3. 应用签名配置

在项目的build-profile.json5文件中配置签名信息。需提前通过DevEco Studio生成密钥和证书请求文件,并在AGC(AppGallery Connect)申请应用签名证书。配置示例如下:

"signingConfigs": [{
  "name": "release",
  "material": {
    "certpath": "release.p12",
    "storePassword": "your_password",
    "keyAlias": "your_alias",
    "keyPassword": "your_key_password",
    "profile": "release.p7b",
    "signAlg": "SHA256withECDSA"
  }
}]

4. 代码混淆保护

build-profile.json5中启用混淆,并在项目根目录添加proguard-rules.pro文件定义混淆规则:

"buildTypes": [{
  "name": "release",
  "proguard": {
    "enabled": true,
    "rules": "./proguard-rules.pro"
  }
}]

5. 版本号与更新策略

  • 版本号:在module.json5中配置versionCode(整型,内部版本号)和versionName(字符串,用户可见版本号)。
  • 更新策略:在AGC控制台配置应用的升级方式(静默更新、提示更新等),并确保新版本号大于旧版本。

6. 发布到应用市场注意事项

  • 确保应用符合《华为应用市场审核规范》。
  • 在AGC完成应用信息、隐私声明、测试账号等配置。
  • 使用发布证书签名APPP包。
  • 提交前进行真机测试,确保核心功能正常。
  • 关注AGC的审核状态,及时处理反馈问题。

以上流程基于HarmonyOS Next当前规范,具体操作请以官方文档为准。

回到顶部