鸿蒙应用打包上架流程

鸿蒙(HarmonyOS)作为华为自主研发的操作系统,近年来引起了开发者和用户的广泛关注。如何开发一款鸿蒙应用并成功上架到华为应用市场,成为许多开发者迫切想要了解的话题。本文将以简洁易懂的方式,带你完成从应用打包到成功上架的全流程。


第一步:准备工作

在开始打包之前,需要完成以下准备:

  1. 开发环境配置

    • 确保安装了 DevEco Studio,这是开发鸿蒙应用的官方 IDE。
    • 配置 JDK(推荐 1.8 版本)、Node.js 和 npm 环境。
    • 下载鸿蒙 SDK 并在 DevEco Studio 中正确添加。
  2. 开发者账号注册

  3. 应用信息准备

    • 确保已经在"应用管理"中创建了你的应用,并填写了基本信息(名称、简介、图标等)。
    • 准备好应用的隐私政策文件,这是上架必需项。

第二步:应用打包

应用打包是将你的代码转换为可以运行的安装包(.hap 或 .app)。以下是关键步骤:

1. 配置打包参数

在 DevEco Studio 中:

  • 打开 build.gradle 文件,设置应用的 applicationId 和版本信息:

    gradle 复制代码
    applicationId "com.example.myapp"
    versionCode 1
    versionName "1.0.0"
  • 确保使用了正确的签名配置:

    • build-profile.json5 文件中,填写签名证书的路径和密码。

    示例配置如下:

    json 复制代码
    "signingConfigs": [
      {
        "name": "default",
        "type": "HarmonyOS",
        "material": {
          "certpath": "path/to/cert.cer",
          "storePassword": "your_store_password",
          "keyAlias": "debugKey",
          "keyPassword": "your_key_password",
          "profile": "path/to/profile.p7b",
          "signAlg": "SHA256withECDSA",
          "storeFile": "path/to/keystore.p12"
        }
      },
      {
        "name": "release",
        "type": "HarmonyOS",
        "material": {
          "certpath": "path/to/release_cert.cer",
          "storePassword": "release_store_password",
          "keyAlias": "releaseKey",
          "keyPassword": "release_key_password",
          "profile": "path/to/release_profile.p7b",
          "signAlg": "SHA256withECDSA",
          "storeFile": "path/to/release_keystore.p12"
        }
      }
    ],
    "products": [
      {
        "name": "default",
        "signingConfig": "release",
        "compatibleSdkVersion": "5.0.0(12)",
        "runtimeOS": "HarmonyOS",
        "buildOption": {
          "strictMode": {
            "caseSensitiveCheck": true,
            "useNormalizedOHMUrl": true
          }
        }
      }
    ]

2. 生成密钥和证书请求文件

在 DevEco Studio 中,依次执行以下步骤:

  1. 菜单选择 Build > Generate Key and CSR
  2. 在弹出的对话框中:
    • Key Store File :选择已有密钥库文件(.p12 文件),或者点击 New 新建。
    • 如果新建:
      • 填写密钥库文件的路径和名称。
      • 设置密钥库密码(至少包含大写字母、小写字母、数字和特殊符号中的两种,长度不小于 8 位)。
    • 点击 OK,生成密钥库文件。
  3. 填写密钥信息:
    • Alias:密钥别名,用于标识密钥。
    • Password:密钥密码,与密钥库密码一致。
    • Validity:证书有效期(建议设置为 25 年或以上)。
    • 证书基本信息如组织、城市、国家码等。
  4. 指定 CSR 文件存储路径并命名,点击 Finish

完成后,会生成 .p12 文件(密钥库文件)和 .csr 文件(证书请求文件)。

3. 申请发布证书

  1. 登录 AppGallery Connect
  2. 在左侧导航栏选择"用户与访问 > 证书管理"。
  3. 点击"新增证书",上传刚生成的 .csr 文件并填写相关信息。
  4. 提交后,下载生成的 .cer 文件(发布证书)。

4. 配置签名信息

  1. 打开 DevEco Studio,选择 File > Project Structure > Signing Configs
  2. 填写以下信息:
    • Store File :选择生成的 .p12 文件。
    • Store Password:填写密钥库密码。
    • Key alias:填写密钥别名。
    • Key password:填写密钥密码。
    • Sign alg :设置为 SHA256withECDSA
    • Profile file :选择下载的 .p7b 文件(Profile 文件)。
    • Certpath file :选择下载的 .cer 文件(发布证书)。
  3. 点击 OK 保存。

5. 生成安装包

在 DevEco Studio 中,点击 Build > Build Hap(s)/APP(s) ,选择适合的构建选项。打包完成后,你将在 output 文件夹中找到生成的 .hap 文件。


第三步:测试与优化

在提交应用前,确保应用质量达到要求:

  1. 功能测试

    • 在鸿蒙设备或模拟器上运行你的 .hap 文件,验证应用的各项功能是否正常。
    • 使用 DevEco Studio 内置的调试工具检查性能瓶颈。
  2. 兼容性测试

    • 使用华为提供的云测服务进行兼容性测试,确保应用在不同设备上的表现一致。
  3. 安全检查

    • 确保没有隐私权限滥用或敏感信息泄露。
    • 使用 hap-signature-checker 工具检查签名完整性。

第四步:提交与上架

当你的应用准备就绪后,可以提交到华为应用市场:

1. 提交应用

  • 登录华为开发者后台,进入"应用管理"。
  • 上传 .hap 文件,填写版本更新说明。
  • 提交应用截图、视频以及隐私政策文件。

2. 审核与反馈

提交后,华为会进行以下审核:

  • 技术审核:检查应用是否存在崩溃、兼容性问题等。
  • 内容审核:确保应用内容符合平台规范。
  • 隐私审核:核对隐私政策和权限声明是否合规。

一般情况下,审核时间为 1-3 个工作日。如果审核未通过,需根据反馈修改应用并重新提交。

3. 应用上架

审核通过后,应用将正式上架华为应用市场。你可以通过后台查看应用的下载量和用户评价,进一步优化产品。


常见问题解答

  1. 签名失败怎么办?

    • 检查签名证书路径和密码是否正确。
    • 确保证书的有效期未过。
  2. 审核被拒如何处理?

    • 仔细阅读审核意见,针对问题进行修改。
    • 确保重新提交的版本完全解决了所有问题。
相关推荐
风中飘爻3 小时前
鸿蒙生态:鸿蒙生态校园行心得
华为·harmonyos
Aqua Cheng.4 小时前
华为开发岗暑期实习笔试(2025年4月16日)
java·算法·华为·动态规划
Linux运维老纪6 小时前
交换机之配置系统基本信息(Basic Information of the Configuration System for Switches)
linux·网络·mysql·华为·云计算·运维开发
高心星19 小时前
HarmonyOS 5.0应用开发——MVVM模式的应用
harmonyos·mvvm·鸿蒙5.0·备忘录应用
别说我什么都不会20 小时前
【仓颉三方库】工具类—— compress4cj
harmonyos
别说我什么都不会20 小时前
【仓颉三方库】工具类—— uuid4cj
harmonyos
__Benco1 天前
OpenHarmony - 小型系统内核(LiteOS-A)(十),魔法键使用方法,用户态异常信息说明
人工智能·harmonyos
NapleC2 天前
HarmonyOS:一多能力介绍:一次开发,多端部署
华为·harmonyos
我爱学习_zwj2 天前
【鸿蒙HarmonyOS】深入理解router与Navigation
华为·harmonyos