鸿蒙应用开发实战【97】— 应用发布AGC上架全流程

鸿蒙应用开发实战【97】--- 应用发布AGC上架全流程

本文是「号码助手全栈开发系列」第 97 篇,持续更新中...

开源社区:https://openharmonycrossplatform.csdn.net


前言

当应用开发完成、测试通过后,下一步就是在 AppGallery Connect(AGC)上架。本篇覆盖从应用签名到应用商店发布的完整上架流程,包括证书申请、打包、创建应用、提交审核等环节。

本篇涵盖:AGC 控制台应用创建、app.json5 配置解读、release HAP 打包、签名证书三件套、版本号管理、上架检查清单、发布渠道选择。


一、App Scope 配置

文件AppScope/app.json5

json5 复制代码
{
  "app": {
    "bundleName": "com.fiona.numberassistant",
    "vendor": "fiona",
    "versionCode": 1000000,
    "versionName": "1.0.0",
    "icon": "$media:app_icon",
    "label": "$string:app_name",
    "distributedNotificationEnabled": false
  }
}

字段含义

字段 说明
bundleName com.fiona.numberassistant 应用唯一标识,与 AGC 创建的应用一致
vendor fiona 开发者名称
versionCode 1000000 版本号(整数),新版本必须递增
versionName 1.0.0 版本名称,对用户展示
icon $media:app_icon 应用图标引用
label $string:app_name 应用名称引用

二、签名证书三件套

上架必须使用 release 签名。需要先注册华为开发者账号并生成签名证书。

2.1 文件类型

文件 后缀 用途 安全等级 获取方式
密钥库文件 .p12 包含私钥和公钥 🔴 绝不泄露 DevEco Studio 生成
证书文件 .cer 华为颁发的开发者证书 🟢 可公开 AGC 证书管理
Profile 文件 .p7b 包含包名和权限列表 🟢 可公开 AGC 证书管理

2.2 申请流程

复制代码
1. 登录 AGC → 用户与访问 → 证书管理
2. 生成 .p12 密钥库文件(设置密码和别名)
3. 上传 .p12 申请 .cer 开发者证书
4. 创建 .p7b Profile 文件(关联证书 + 指定包名)
5. 下载三件套到本地

2.3 build-profile.json5 配置

json5 复制代码
{
  "app": {
    "signingConfigs": [
      {
        "name": "release-sign",
        "material": {
          "certPath": "./signing/release.cer",
          "profilePath": "./signing/release.p7b",
          "keystorePath": "./signing/release.p12",
          "keystorePassword": "your-keystore-pwd",
          "keyAlias": "key1",
          "keyPassword": "your-key-pwd"
        }
      }
    ],
    "products": [
      {
        "name": "default",
        "signingConfig": "release-sign"
      }
    ]
  }
}

三、Release HAP 打包

bash 复制代码
# 1. 清理
./hvigorw clean

# 2. Release 构建(使用上面配置的签名)
./hvigorw assembleHap --mode module -p module=entry -p buildMode=release

# 3. 生成 App Pack(适用于 AGC 上架)
./hvigorw assembleApp --mode module -p module=entry -p buildMode=release

# 4. 产物位置
ls build/default/outputs/default/
# entry-release.hap
# entry-release.app    ← 上架用这个

产物说明

文件 用途
entry-release.hap 调试/自用安装
entry-release.app 上架 AppGallery(包含 .hap 和签名信息)

四、AGC 上架流程

4.1 创建应用

复制代码
1. 登录 AppGallery Connect https://developer.huawei.com/consumer/cn/service/agc
2. 我的应用 → 新建应用
3. 填写:
   └── 包名:com.fiona.numberassistant(与 app.json5 一致)
   └── 应用名称:号码助手
   └── 应用分类:工具 → 实用工具
   └── 语言:中文(简体)

4.2 上传包

复制代码
1. 发布 → 软件版本 → 创建新版本
2. 上传 entry-release.app
3. 系统自动解析包信息(版本名、版本号、权限列表)
4. 填写版本更新说明(新功能列表 / Bug 修复)

4.3 填写应用信息

信息项 要求 号码助手填写参考
应用图标 1024×1024 PNG AppScope/resources/base/media/app_icon.png
应用截图 至少 3 张 首页/卡号管理/扫描页的截图
应用简介 80 字以内 "一站式管理多卡号应用绑定..."
应用描述 2000 字以内 详细介绍功能和使用场景
隐私政策 URL 或文本 需要隐私政策页面
版权信息 IP 声明 如有

4.4 提交审核

复制代码
1. 检查清单确认无误
2. 提交审核
3. 审核周期约 1-3 个工作日
4. 审核通过 → 应用上架
5. 审核拒绝 → 查看拒绝原因 → 修改后重新提交

五、版本号管理策略

bash 复制代码
# 版本号递增脚本(示例如下)
# versionCode 的格式:主版本(2位) + 次版本(2位) + 补丁(2位)
# 1.0.0 → 1000000
# 1.1.0 → 1000100
# 1.0.1 → 1000001
# 2.0.0 → 2000000

版本号规则

复制代码
versionName: "1.0.0"   ← 对用户可见
versionCode: 1000000   ← 检测更新的依据,必须递增

六、上架检查清单

检查项 说明 是否通过
bundleName 唯一 在 AGC 和应用中一致
release 签名 使用发布证书签名
versionCode 递增 比上一版本大
权限最小化 无多余权限声明
隐私政策 提供可访问的 URL
应用截图 至少 3 张,覆盖核心功能
测试通过 ohosTest 全部通过
性能优化 Profiler 无内存泄漏

小结

阶段 操作 产物
证书申请 AGC 生成 .p12 → .cer → .p7b 签名三件套
配置 app.json5 + build-profile.json5 signingConfigs bundleName / versionCode
打包 hvigorw assembleApp -p buildMode=release entry-release.app
创建应用 AGC 新建应用,填入包名和分类 AGC 应用条目
提交 上传 .app + 填写信息 + 提交审核 AGC 审核中
发布 审核通过后发布到 AppGallery 正式上架

如果这篇文章对你有帮助,欢迎点赞👍、收藏⭐、关注🔔,你的支持是我持续创作的动力!


相关资源:

相关推荐
绝世番茄1 小时前
HarmonyOS Next 深入解析:Scroll 组件与 onScroll 滚动监听实战
华为·harmonyos·鸿蒙
2501_919749031 小时前
华为鸿蒙免费铃声APP—小羊免费铃声
华为·harmonyos
不羁的木木1 小时前
《HarmonyOS技术精讲-NearLink Kit(星闪服务)》第3篇:数据收发——点对点数据传输实战
pytorch·华为·harmonyos
春卷同学1 小时前
HarmonyOS掌上记账APP开发实践第25篇:Image 组件高级用法 — 资源引用、网络图片与首字符占位方案
网络·华为·harmonyos
2501_919749031 小时前
华为鸿蒙免费记账与统计APP—小羊统计
华为·harmonyos
AD02272 小时前
32-Token明文存储-把凭据边界收到安全仓储里
harmonyos·arkts·鸿蒙开发
特立独行的猫a3 小时前
Node.js三方库鸿蒙 PC 移植:鸿蒙PC开发者面对面 · 线下课件分享
华为·harmonyos·三方库移植·鸿蒙pc
春卷同学4 小时前
HarmonyOS掌上记账APP开发实践第23篇:弹性动效与手势 — EdgeEffect.Spring 与手势系统实战
spring·华为·harmonyos
l134062082354 小时前
鸿蒙应用开发实战【88】— DevEco Studio高效开发技巧
华为·harmonyos·鸿蒙系统