App Inventor 2 构建纯血鸿蒙 HarmonyOS App

« 返回首页

本文详细讲解在 App Inventor 2 中文网上编译 HarmonyOS NEXT 应用(HAP包)的全流程,包括证书申请、签名机制、测试方法,并与 Android、iOS 编译流程进行深度对比。


一、HarmonyOS NEXT 应用签名体系概述

HarmonyOS NEXT 对应用安全有严格的要求,任何 HAP(HarmonyOS Ability Package)包都必须经过签名才能安装到真机。这与 Android 和 iOS 形成了显著差异。

1.1 签名类型

签名类型 能否安装 能否上架应用市场 设备限制 证书来源 适用场景
未签名 ❌ 不能 ❌ 不行 模拟器调试可用
Debug签名 ✅ 仅注册设备 ❌ 不行 需提前注册设备UDID SDK自带调试证书 开发测试阶段
Release签名 ✅ 任意设备 ✅ 可以 无限制 华为开发者后台(AGC)申请 正式发布

1.2 与 Android/iOS 签名体系对比

维度 Android iOS HarmonyOS NEXT
未签名安装 ✅ 开启”未知来源”即可 ❌ 不允许 ❌ 不允许(模拟器除外)
调试签名 自签名APK即可 需Apple开发者证书+设备注册 需注册设备UDID+Debug证书
发布签名 自签名keystore Apple Distribution证书 华为AGC申请Release证书
开发者费用 免费($25一次性注册) 99美元/年(约680元/年) 免费(个人开发者)
证书管理平台 本地keystore文件 Apple开发者门户 AppGallery Connect (AGC)
配置文件 无需 需Provisioning Profile 需Profile配置文件
证书有效期 自定义(建议25年+) 1年 1-3年(取决于类型)

二、准备工作:华为开发者账号

2.1 注册华为开发者账号

  1. 访问 华为开发者联盟 注册账号
  2. 完成实名认证(个人或企业)
  3. 登录 AppGallery Connect (AGC) 控制台

2.2 与 Apple 开发者账号对比

对比项 Apple开发者 华为开发者
年费 99美元/年(约680元) 免费
实名认证 需要Apple ID 需要华为账号+实名
审核周期 1-2天 1-3天
教育优惠 免费名额 免费本身就是

💡 提示:相比 Apple 每年 680 元的开发者费用,华为开发者注册是免费的,这是鸿蒙生态的一大优势。


三、证书申请全流程

3.1 创建项目与应用(AGC)

  1. 登录 AppGallery Connect
  2. 点击「我的项目」→「添加项目」,输入项目名称
  3. 在项目下添加应用,选择平台为 HarmonyOS NEXT
  4. 填写应用名称和包名(Bundle ID/包名,格式建议:cn.fun123.你的项目名

3.2 申请签名证书

HarmonyOS NEXT 有两类证书需要了解:

(1)调试证书(Debug证书)

  • 用途:开发测试阶段使用
  • 来源:SDK自带,无需手动申请
  • 限制:只能在已注册UDID的设备上运行
  • App Inventor处理方式:BuildServer 自动使用 SDK 自带的 OpenHarmony.p12 进行 Debug 签名,用户无感知

(2)发布证书(Release证书)

  • 用途:正式发布和上架应用市场
  • 来源:在AGC后台手动申请
  • 包含文件
    • 签名证书.cer 文件)— 证明开发者身份
    • Profile配置文件.p7b 文件)— 绑定应用和设备信息

3.3 发布证书申请步骤

Step 1:生成密钥对和证书签名请求(CSR)

  1. 打开 DevEco Studio(或使用 OpenJDK 的 keytool)
  2. 进入 BuildGenerate Key and CSR
  3. 填写密钥信息:
    • Key Alias(密钥别名):自定义,如 myapp_release
    • Password(密钥密码):请妥善保存
    • Validity(有效期):建议设置 25 年以上
    • Certificate 信息:填入开发者/企业信息
  4. 生成 .p12 密钥库文件和 .csr 证书请求文件

⚠️ 重要.p12 密钥库文件是签名的核心凭证,请务必安全保存!丢失后无法恢复,需要重新申请全部证书。

Step 2:在 AGC 申请签名证书

  1. 登录 AGC 控制台
  2. 进入项目 → 选择应用 → 「项目设置」→「常规」
  3. 找到「签名配置」部分
  4. 点击「添加签名证书」
  5. 上传 Step 1 生成的 .csr 文件
  6. 提交后下载生成的 签名证书.cer 文件)

Step 3:创建 Profile 配置文件

  1. 在 AGC 控制台同一页面,点击「添加Profile」
  2. 选择证书类型:
    • 调试类型:需要注册设备UDID
    • 发布类型:用于上架应用市场
  3. 选择应用包名和刚才申请的签名证书
  4. 生成并下载 Profile 文件.p7b 文件)

Step 4:上传证书到 App Inventor

  1. 登录 App Inventor 2 中文网 (https://www.fun123.cn)
  2. 在项目中选择「构建」菜单
  3. 选择 HarmonyOS NEXT 编译选项
  4. 上传以下文件:
    • 签名证书.cer 文件)
    • Profile配置文件.p7b 文件)
  5. 开始编译

四、如何测试

4.1 测试环境对比

测试方式 Android iOS HarmonyOS NEXT
模拟器 Android Studio模拟器 Xcode模拟器 DevEco Studio模拟器
Companion ✅ AI2 Companion ✅ iOS Companion ❌ 暂无(开发中)
USB调试 ✅ ADB ✅ 需信任电脑 ✅ HDC(需开启开发者模式)
扫码安装 ✅ 二维码 ✅ 二维码(Ad Hoc) ✅ 二维码(需签名HAP)

4.2 模拟器测试(无需签名)

模拟器是开发阶段最便捷的测试方式,不需要任何签名证书

  1. 编译生成未签名的 HAP 包
  2. 打开 DevEco Studio 中的模拟器
  3. 使用 HDC 命令安装:
    hdc install your_app.hap
    
  4. 或直接将 HAP 文件拖入模拟器窗口

💡 模拟器不校验签名,因此开发测试阶段可以跳过整个证书流程。

4.3 真机测试(Debug签名)

要在真实鸿蒙设备上测试,需要完成以下步骤:

Step 1:获取设备 UDID

  1. 用 USB 线连接设备到电脑
  2. 打开命令行,执行:
    hdc shell bm get -u
    

    或者在设备的「设置」→「关于手机」中连续点击版本号获取设备序列号

  3. 记录设备 UDID

Step 2:注册设备

  1. 登录 AGC 控制台
  2. 进入「项目设置」→「设备管理」
  3. 添加设备,输入设备名称和 UDID
  4. 最多可注册 100 台设备

Step 3:开启开发者模式

  1. 在鸿蒙设备上,进入「设置」→「关于手机」
  2. 连续点击「版本号」7次,开启开发者模式
  3. 进入「设置」→「系统和更新」→「开发者选项」
  4. 开启「USB调试」和「允许通过HDC安装应用」

Step 4:安装测试

  1. 在 App Inventor 中编译带 Debug 签名的 HAP
  2. 使用 USB 连接设备
  3. 执行安装:
    hdc install your_app_signed.hap
    
  4. 或使用 App Inventor 提供的二维码扫描安装

4.4 与 iOS 测试流程对比

步骤 iOS测试 鸿蒙测试
开发者账号 需要(99美元/年) 免费
证书申请 CSR→Apple Distribution证书 CSR→AGC签名证书
设备注册 需注册UDID(100台限制) 需注册UDID(100台限制)
配置文件 Provisioning Profile (.mobileprovision) Profile (.p7b)
开发者模式 iOS 16+需开启 需开启
安装方式 二维码/AltStore HDC/二维码
模拟器测试 Xcode(无需签名) DevEco Studio(无需签名)

五、应用上架

5.1 三大平台上架流程对比

步骤 Android (Google Play) iOS (App Store) HarmonyOS (华为应用市场)
开发者注册 $25 一次性 $99/年 免费
签名方式 自签名 keystore Apple Distribution AGC Release 证书
应用包格式 .apk / .aab .ipa .hap / .app
审核周期 1-7天 1-7天 1-3天
审核严格度 较宽松 最严格 适中
首次提交 较快 需要更多信息 需要软件著作权(部分)

5.2 鸿蒙应用上架步骤

  1. 使用 Release 签名编译 HAP 包
  2. 登录 AGC 控制台
  3. 进入「分发」→「版本信息」
  4. 上传 HAP 包
  5. 填写应用信息:
    • 应用图标和截图
    • 应用描述和更新说明
    • 分类和标签
    • 隐私政策URL
  6. 提交审核
  7. 审核通过后自动上架

六、证书主题深度解析

6.1 为什么鸿蒙证书比安卓复杂?

Android 的开放性允许用户自行管理签名密钥(keystore),不需要第三方认证。而 HarmonyOS NEXT 借鉴了 iOS 的封闭安全理念:

  1. 安全隔离:所有应用必须由可信机构(华为)签发的证书签名
  2. 设备绑定:Debug 签名绑定特定设备,防止调试证书被滥用分发
  3. 统一管理:通过 AGC 平台集中管理证书、设备和应用
  4. 来源可溯:每个应用都可以追溯到具体的开发者身份

6.2 证书文件说明

文件类型 格式 用途 类比 Android/iOS
.p12 PKCS#12 密钥库 存储私钥和证书链 Android keystore / iOS .p12
.cer X.509 证书 签名证书(公钥) Apple .cer 证书
.csr 证书签名请求 向AGC申请证书 Apple CSR
.p7b PKCS#7 Profile配置文件 iOS .mobileprovision
.hap HarmonyOS包 应用安装包 Android .apk / iOS .ipa

6.3 三大平台编译流程对比总结

Android 编译(最简单)

编写项目 → 点击「构建APK」 → 下载安装 ✅
  • 无需任何证书
  • 自签名 keystore
  • 可直接安装测试

iOS 编译(最复杂)

下载CSR → Apple开发者门户申请证书 → 创建App ID → 
注册设备 → 创建Provisioning Profile → 上传Profile → 
构建IPA → 扫码/上传App Store
  • 需要付费开发者账号
  • 证书有效期1年
  • 最多注册100台设备
  • 需要应用专用密码上传App Store

HarmonyOS NEXT 编译(适中)

注册华为开发者 → 创建AGC项目/应用 → 申请签名证书(.cer) → 
创建Profile(.p7b) → 上传证书和Profile到App Inventor → 
构建HAP → 安装测试/上架
  • 开发者注册免费
  • 模拟器测试无需证书
  • Debug签名可自动完成
  • Release发布需手动申请证书

七、常见问题 FAQ

Q1:可以跳过证书直接在真机上测试吗?

不可以。 鸿蒙真机强制要求签名。但模拟器不校验签名,可以用来快速测试。

Q2:Debug 签名和 Release 签名的 HAP 有什么区别?

Debug 签名只能在已注册的设备上运行,不能上架应用市场。Release 签名可以在任意设备上运行并上架。

Q3:证书过期后怎么办?

需要重新申请证书并重新编译应用。建议申请证书时设置较长的有效期。

Q4:一个人可以申请多少个证书?

AGC 平台对每个应用可以申请多个证书,建议 Debug 和 Release 使用不同的证书。

Q5:和 iOS 相比,鸿蒙的证书流程更简单还是更复杂?

整体比 iOS 简单。主要优势:开发者账号免费、模拟器无需签名、Debug 签名自动化程度更高。iOS 需要付费的 Apple 开发者计划才能在真机上测试。


参考链接


本文由 App Inventor 2 中文网 整理,如有疑问请到清泛IT社区讨论。

文档反馈