news 2026/6/25 20:08:57

鸿蒙应用上架全流程解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
鸿蒙应用上架全流程解析

鸿蒙应用从开发完成到最终上架至华为应用市场,需经历一套严谨的签名、打包与审核流程。此流程的核心在于构建一个由密钥、数字证书和Profile文件构成的信任链,以确保应用的完整性、真实性与合规性。本文将详细拆解这一流程,涵盖从本地密钥生成到AGC(AppGallery Connect)后台配置的完整链路,并附上关键操作步骤与规范解读。

1. 核心流程总览

HarmonyOS应用上架的整体操作流程遵循一个清晰的线性路径,可概括为“本地准备 → 云端申请 → 本地签名 → 云端上架”。具体而言,开发者首先需在集成开发环境(IDE)中生成密钥与证书请求文件;随后,在AGC平台申请对应的发布证书与Profile文件;接着,将获取的签名文件配置回IDE工程,完成应用的编译与签名打包;最后,将签名后的应用包提交至AGC进行应用信息配置与上架审核。此流程环环相扣,任一环节的缺失或错误都将导致后续步骤无法进行。

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

签名流程的起点是在DevEco Studio中生成密钥(Key)和证书请求文件(CSR)。密钥以.p12格式的密钥库文件存储,内含用于非对称加密的公私钥对,是应用签名的根基。证书请求文件(.csr)则包含了公钥及开发者的组织信息,用于向权威机构(此处为AGC)申请数字证书。

操作步骤如下:

  1. 在DevEco Studio菜单栏选择Build > Generate Key and CSR
  2. 若本地无现有密钥,点击“New”创建新密钥库。需设置存储路径、文件名及密码。密码要求包含大写字母、小写字母、数字和特殊符号中的至少两种,且长度不少于8位。
  3. 填写密钥别名(Alias)、有效期(Validity,建议≥25年)及证书基本信息(如组织、地区等)。
  4. 指定CSR文件的存储路径与文件名,完成创建。

成功执行后,将在指定目录获得.p12密钥库文件与.csr证书请求文件,为后续证书申请做好准备。

3. 云端证书与Profile申请

获取CSR文件后,需登录AGC平台完成发布证书与Profile文件的申请。

3.1 申请发布证书
发布证书(.cer文件)由AGC颁发,用于验证发布者身份与保障代码完整性。申请前需确保开发者账号已完成实名认证。每个账号限申请一个发布证书。

  1. 登录AGC,进入“用户与访问 > 证书管理”。
  2. 点击“新增证书”,填写证书名称,选择“发布证书”类型,并上传此前生成的.csr文件。
  3. 提交申请后,在证书管理页面下载生成的.cer证书文件至本地。

3.2 申请发布Profile
Profile文件(.p7b文件)将应用包名、证书信息、权限列表等绑定在一起,是应用包的必要组成部分。申请前提是已在AGC创建对应的HarmonyOS应用项目。

  1. 在AGC中进入对应项目的“HarmonyOS应用 > HAP Provision Profile管理”。
  2. 点击“添加”,配置Profile名称,类型选择“发布”,并关联上一步申请的发布证书。
  3. 根据应用需求配置“申请权限”。若应用使用了ACL(访问控制列表)方式申请的高阶权限,需额外邮件申请开通配置项;否则,在“受限权限(HarmonyOS API9以下)”中配置。此处申请的权限必须与项目代码中声明的权限完全一致。
  4. 提交并下载生成的.p7bProfile文件。

特别注意:针对API 9及以上版本的应用,AGC会签发新版本Profile。若应用包中使用了旧版Profile,将无法上架,需重新下载并打包。

4. 工程签名配置与应用打包

获取所有签名文件后,需在DevEco Studio中完成工程签名配置,并进行最终的应用打包。

4.1 配置签名信息
在IDE中关联本地签名文件与云端颁发的凭证。

  1. 打开File > Project Structure,进入Project > Signing Configs
  2. 取消勾选“Automatically generate signature”,手动配置以下信息:
    • Store file: 选择本地.p12密钥库文件。
    • Store password: 输入创建密钥库时设置的密码。
    • Key alias: 输入创建密钥时设置的别名。
    • Key password: 输入密钥密码(通常与Store password一致)。
    • Sign alg: 固定为SHA256withECDSA
    • Profile file: 选择下载的.p7bProfile文件。
    • Certpath file: 选择下载的.cer证书文件。

4.2 编译打包应用
在打包前,必须确保应用包符合华为的软件包规范,主要约束如下表所示:

规范项具体要求与说明
APP包大小总体不超过4GB。
HAP包大小根据设备类型有不同上限:手机/平板≤4GB,智能手表/大屏≤2GB,路由器≤200MB,运动手表≤20MB。多设备HAP包大小受限于所支持设备类型中的最小上限。
HAP包类型必须全部为非免安装类型(FA模型installationFreefalse,Stage模型bundleTypeapp)。
APP包名格式为以点分隔的字符串(至少三段),每段仅允许英文字母、数字、下划线,总长度7-128字符,且不能包含harmonyohos等保留字作为独立段。

确认规范符合后,通过菜单Build > Build Hap(s)/APP(s) > Build APP(s)执行编译。打包完成后,应用包默认生成于工程目录的build/outputs/default/下(API 4-7工程路径略有不同)。

5. 应用上架配置

最后一步是将打包好的应用提交至AGC上架。

  1. 登录AGC,进入“我的应用”,在HarmonyOS页签中找到目标应用。
  2. 在“应用信息”中,需首先完成“华为智慧分发平台合作协议”的签署(仅账号持有者或法务角色可操作)。
  3. 于“基本信息”区域配置应用支持的设备类型。此处可调整分发设备,但需注意:应用升级时仅支持新增设备类型,不可删除已上架应用原有的设备类型。
  4. 完成应用信息(如描述、截图、分类等)的全面配置后,即可提交应用包,进入官方的审核流程,静待上架。

通过以上五个核心步骤,开发者便能系统性地完成HarmonyOS应用的签名、打包与上架全流程,确保应用安全、合规地交付至最终用户。


参考来源

  • 鸿蒙5:HarmonyOS应用开发-项目打包申请证书和上架
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/25 20:07:03

用ssh-copy-id实现免密登录Linux服务器

轻松实现Linux服务器免密登录:ssh-copy-id详解 在日常运维和开发工作中,频繁输入密码登录Linux服务器既繁琐又存在安全隐患。通过ssh-copy-id工具,可以快速配置SSH密钥对,实现免密登录,提升效率与安全性。本文将详细介…

作者头像 李华
网站建设 2026/6/25 20:01:05

LangGraph 判断节点实战:用条件路由打造智能天气查询 Agent

为什么需要 LangGraph 判断节点常规 AI 对话流程多为固定顺序,无法根据用户意图动态调整执行路径。在工具型 Agent 中,系统必须先判断:用户问题是否需要调用外部工具工具执行后如何衔接结果输出非工具类问题直接结束流程LangGraph 的判断节点…

作者头像 李华
网站建设 2026/6/25 19:59:04

商业写字楼照明改造实操成本分析 低成本、快落地施工步骤

中小企业商业写字楼,不同于高端写字楼,预算有限、注重实用性,照明改造不需要追求高端格调,核心是“低成本、快落地、高回报”——花最少的钱,解决“亮、省、易管控”三个核心问题,提升员工办公体验&#xf…

作者头像 李华
网站建设 2026/6/25 19:58:20

HCS08指令集与BGND调试指令实战解析

1. 项目概述:从芯片手册到实战指南手头这份来自MC9S08LL16参考手册的指令集表格,对于任何一位深耕Freescale(现NXP)HCS08系列微控制器的嵌入式工程师来说,都再熟悉不过了。它像一本字典,罗列了所有指令的助…

作者头像 李华
网站建设 2026/6/25 19:56:29

CPT Markets:把长期一致性做扎实,注重效率的使用者更容易感受到的要点

对新手与注重稳健体验的外汇内容读者而言,“能看懂”往往比“堆概念”更重要。围绕CPT Markets,以下重点写清解释是否通俗、规则是否易查、提示是否前置,以及服务是否具备连续性。外汇相关平台的价值,体现在长期一致性与信息呈现的…

作者头像 李华
网站建设 2026/6/25 19:55:39

PVE Tools终极指南:10分钟搞定Proxmox VE复杂配置的完整工具箱

PVE Tools终极指南:10分钟搞定Proxmox VE复杂配置的完整工具箱 【免费下载链接】pvetools proxmox ve tools script(debian9 can use it).Including email, samba, NFS set zfs max ram, nested virtualization ,docker , pci passthrough etc. for english user,pl…

作者头像 李华