注意:博主有个鸿蒙专栏,里面从上到下有关于鸿蒙next的教学文档,大家感兴趣可以学习下
如果大家觉得博主文章写的好的话,可以点下关注,博主会一直更新鸿蒙next相关知识
目录
[1. 项目打包上架?](#1. 项目打包上架?)
[1.1. 操作流程](#1.1. 操作流程)
[1.2. 生成密钥和证书请求文件](#1.2. 生成密钥和证书请求文件)
[1.3. 申请发布证书](#1.3. 申请发布证书)
[1.4. 申请发布Profile](#1.4. 申请发布Profile)
[1.4.1. 前提条件](#1.4.1. 前提条件)
[1.4.2. 操作步骤](#1.4.2. 操作步骤)
[1.5. 配置签名信息](#1.5. 配置签名信息)
[1.6. 编译打包应用](#1.6. 编译打包应用)
[1.6.1. 软件包规范](#1.6.1. 软件包规范)
[1.6.2. 操作步骤](#1.6.2. 操作步骤)
[1.7. 上架HarmonyOS应用](#1.7. 上架HarmonyOS应用)
[1.7.1. 配置应用信息](#1.7.1. 配置应用信息)
[1.7.2. 配置版本信息](#1.7.2. 配置版本信息)
1. 项目打包上架?
调试完毕后,您便可以打包HarmonyOS应用,在AGC提交上架。
HarmonyOS通过数字证书(.cer文件)和Profile文件(.p7b文件)等签名信息来保证应用的完整性,应用如需上架到华为应用市场必须通过签名校验。因此,您需要使用发布证书和Profile文件对应用进行签名后才能发布。
上架成功后,用户即可在华为应用市场搜索获取您的HarmonyOS应用。
1.1. 操作流程

1.2. 生成密钥和证书请求文件
在申请数字证书和Profile文件前,首先需要通过DevEco Studio来生成密钥和证书请求文件。
- 密钥:包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,格式为.p12,公钥和私钥对用于数字签名和验证。
- 证书请求文件:格式为.csr,全称为Certificate Signing Request,包含密钥对中的公钥和公共名称、组织名称、组织单位等信息,用于向AGC申请数字证书。
- 在顶部菜单栏选择"Build > Generate Key and CSR"。
说明
如果本地已有对应的密钥,无需新生成密钥,可在"Generate Key and CSR"界面点击下方的"Skip"跳过密钥生成过程,直接使用已有密钥生成证书请求文件。

- 在"Create Key Store"界面,填写密钥库信息后,点击"OK"。
-
- Key store file:设置密钥库文件存储路径,并填写p12文件名。
- Password:设置密钥库密码,必须由大写字母、小写字母、数字和特殊符号中的两种以上字符的组合,长度至少为8位。请记住该密码,后续签名配置需要使用。
- Confirm password:再次输入密钥库密码。

- 在"Generate Key and CSR"界面继续填写密钥信息后,点击"Next"。
-
- Alias:密钥的别名信息,用于标识密钥名称。请记住该别名,后续签名配置需要使用。
- Password:密钥对应的密码,与密钥库密码保持一致,无需手动输入。
- Validity:证书有效期,建议设置为25年及以上,覆盖应用/元服务的完整生命周期。
- Certificate:输入证书基本信息,如组织、城市或地区、国家码等。

- 在"Generate Key and CSR"界面设置CSR文件存储路径和CSR文件名,点击"Finish"。

CSR文件创建成功后,将在存储路径下获取生成密钥库文件(.p12)和证书请求文件(.csr)。

1.3. 申请发布证书
发布证书由AGC颁发的、为HarmonyOS应用配置签名信息的数字证书,可保障软件代码完整性和发布者身份真实性。证书格式为.cer,包含公钥、证书指纹等信息。
说明
请确保您的开发者帐号已实名认证。每个帐号最多申请1个发布证书。
-
登录AppGallery Connect,选择"用户与访问"。

-
在左侧导航栏点击"证书管理",进入"证书管理"页面,点击"新增证书"。

-
在弹出的"新增证书"窗口填写要申请的证书信息,点击"提交"。

|---------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 参数 | 说明 |
| 证书名称 | 不超过100个字符。 |
| 证书类型 | 选择"发布证书"。 |
| 选取证书请求文件(CSR) | 上传生成密钥和证书请求文件 时获取的.csr文件。 |
-
证书申请成功后,"证书管理"页面展示证书名称等信息。点击"下载",将生成的证书保存至本地,供后续签名使用。

说明证书一旦废除将不可恢复,且通过此证书申请的Profile也会全部失效,请谨慎操作。
1.4. 申请发布Profile
1.4.1. 前提条件
1.4.2. 操作步骤
发布Profile格式为.p7b,包含HarmonyOS应用的包名、数字证书信息、应用允许申请的证书权限列表,以及允许应用调试的设备列表(如果应用类型为Release类型,则设备列表为空)等内容。每个应用包中必须包含一个Profile文件。
说明
一个应用最多可申请100个Profile文件。
-
登录AppGallery Connect,选择"我的项目"。
-
找到您的项目,点击您创建的HarmonyOS应用。
-
在左侧导航栏选择"HarmonyOS应用 > HAP Provision Profile管理",进入"管理HAP Provision Profile"页面,点击右上角"添加"。

-
在弹出的"HarmonyAppProvision信息"窗口中添加Profile,完成后点击"提交"。

|--------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 参数 | 说明 |
| 名称 | 不超过100个字符。 |
| 类型 | 选择"发布"。 |
| 选择证书 | 点击"选择",选择申请的发布证书 |
| 申请权限 | * 如您的应用需要使用ACL的方式申请的权限:请提供APP ID发送到agconnect@huawei.com,申请开通"受限ACL权限(HarmonyOS API9及以上)"配置项后,在此配置项中申请权限。 * 如您的应用无需上述权限:选择"受限权限(HarmonyOS API9以下)",根据需要配置权限。 说明 请确保您此处申请的权限与软件包内配置的权限一致。 |
- 发布Profile申请成功后,"管理HAP Provision Profile"页面展示Profile名称、类型等信息。点击"下载",将生成的Profile保存至本地,供后续签名使用。
说明
对于API9及以上的应用/元服务,AGC将签发新版本Profile文件,已申请的Profile也会自动升级为新版本。使用旧版本Profile的应用/元服务不允许上架。如您已在软件包内打包了旧版本Profile文件,请重新下载Profile,然后重新打包上传。

1.5. 配置签名信息
使用制作的私钥(.p12)文件、在AGC申请的证书文件和Profile(.p7b)文件,在DevEco Studio配置工程的签名信息,以构建携带发布签名信息的APP。
- 打开DevEco Studio,在顶部菜单栏选择"File > Project Structure",进入"Project Structure"界面。
- 导航选择"Project",点击"Signing Configs"页签,取消"Automatically generate signature"勾选项,然后配置工程的签名信息,完成后点击"OK"。
-
-
Store file:密钥库文件,选择生成密钥和证书请求文件时生成的.p12文件。
-
Store password:密钥库密码,需要与生成密钥和证书请求文件时设置的密钥库密码保持一致。
-
Key alias:密钥的别名信息,需要与生成密钥和证书请求文件设置的别名保持一致。
-
Key password:密钥的密码,需要与生成密钥和证书请求文件时设置的密码保持一致。
-
Sign alg:固定设置为"SHA256withECDSA"。
-
Profile file:选择申请发布Profile时下载的.p7b文件。
-
Certpath file:选择申请发布证书时下载的.cer文件。

若是API Version 4至7的工程,请在"Signing Configs"界面选择"Release"页签,然后再配置签名信息。
-
1.6. 编译打包应用
1.6.1. 软件包规范
在正式打包应用前,请确保您已了解HarmonyOS应用软件包规范。
|--------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 规范 | 说明 |
| APP包大小 | 不超过4GB。 |
| HAP包大小 | 在AGC上传APP包后,AGC将解析检测APP包中的HAP包大小,并根据HAP包声明支持的设备类型判断HAP包大小是否满足条件。如APP包大小符合条件,但HAP包超过上限,系统会提示HAP包过大,您仍无法成功上传APP包。因此请确保每个HAP包满足大小限制: * 不同设备类型的HAP包大小限制:手机/平板不能超过4GB,智能手表/大屏不能超过2GB,路由器不能超过200MB,运动手表不能超过20MB。 * 对于支持单设备的HarmonyOS应用软件包,HAP包大小不能超过对应设备类型的上限。例如,HarmonyOS应用软件包仅支持运动手表,则HAP包不能超过20MB。 * 对于支持多设备的HarmonyOS应用软件包,如果APP包中的单个HAP包支持单个设备,则HAP包大小不能超过对应设备类型的上限。如果APP包中的单个HAP包支持多个设备,则HAP包大小不能超过这多个设备类型上限的最小值。 注意 当前仅智能手表应用支持配置付费下载。如需将应用分发至智能手表及其他设备(如运动手表+手机),且希望智能手表应用为付费下载应用,请将智能手表应用分开打包,即为智能手表单独创建一个应用,为其他设备(如运动手表+手机)创建另一个应用。 |
| HAP包类型 | 一个HarmonyOS应用包内所有HAP包都必须是非免安装类型,即: * 如应用为FA模型,需保证每个HAP包的src/main/config.json文件中"installationFree"字段值均为"false"。 * 如应用为Stage模型,需保证AppScope/app.json5文件的"bundleType"字段值为"app"(无"bundleType"字段则默认为"app"类型)。 |
| APP包名 | * 必须为以点号(.)分隔的字符串,且至少包含三段,每段中仅允许使用英文字母、数字、下划线(_),如"harmony_11.huawei.com "。首段以英文字母开头,非首段以数字或英文字母开头,每一段以数字或者英文字母结尾,如"harmony99.huawei.11_com"。不允许多个点号(.)连续出现,如"harmony..huawei.com "。 * 长度为7~128个字符,且不可包含敏感词,不能将保留字符作为独立段呈现。以保留字符harmony为例,包名不能为harmony.huawei.com、com.harmony.huawei、com.huawei.harmony。保留字符包括如下: * * oh * ohos * harmony * harmonyos * openharmony * system |
1.6.2. 操作步骤
- 打开DevEco Studio,在顶部菜单栏选择"Build > Build Hap(s)/APP(s) > Build APP(s)"。
- 等待编译构建。编译完成后,将在工程目录"build > outputs > default"目录下,获取可用于发布的应用包。

API Version 4至7的工程需在"build > outputs > app > release"目录下获取。

1.7. 上架HarmonyOS应用
获取到HarmonyOS应用软件包后,您可将应用提交至AGC申请上架。上架成功后,用户即可在华为应用市场搜索获取您的HarmonyOS应用。
1.7.1. 配置应用信息
-
登录AppGallery Connect,选择"我的应用"。
-
在应用列表首页中选择"HarmonyOS"页签,点击待发布的HarmonyOS应用名称。如应用较多,可点击"类型"下拉框仅筛选出HarmonyOS应用,或点击"支持设备"按设备类型筛选查找。

-
在左侧导航栏选择"应用信息"菜单。如果您尚未签署华为智慧分发平台合作协议,此时会弹出华为智慧分发平台合作协议对话框,您需按提示进行协议签署。否则,页面将跳转回AGC首页,您将无法继续发布HarmonyOS应用。注意 只有帐号持有者和法务角色才有权限签署华为智慧分发平台合作协议。

-
在"基本信息"区域,您可以配置HarmonyOS应用支持的设备信息。

|--------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 参数 | 说明 |
| 支持设备 | 默认显示创建应用时选择的设备类型。 * * 在"设备类型"栏,可新增或减少分发设备。注意 * * * 支持由单设备改为多设备,或多设备改为单设备。 * 升级应用仅允许增加设备类型,不支持删除原有在架应用已选择的设备类型。例如,在架应用支持的设备类型为"手机",升级应用时您无法取消勾选"手机"选项。 * * 在"可兼容设备"栏中,点击下拉箭头,可根据需要选择兼容设备。 * * * 手机:可选择手机、平板。 * 大屏:可选择智慧屏。 * 手表:可选择智能手表、运动手表。 * * 在"可支持操作设备"栏中,点击下拉箭头,可根据需要选择支持的操作设备。 * * * 手机:无。 * 大屏:可选择遥控器、手柄、体感。 * 手表:无。 * * 在"操作"栏中,点击"清除",可一键清除所选的兼容设备与支持的操作设备。 说明路由器设备不支持设置兼容设备和操作设备。 |
- 在"可本地化基础信息"区域,配置HarmonyOS应用发布后向用户呈现的信息,具体请参见配置可本地化基础信息。说明
-
- 运动手表和智能手表共用一套应用素材。
- 如果选择分发到多设备,请在各设备标签页分别上传对应的应用素材。
- 根据HarmonyOS应用提供的功能和内容,在"应用分类"区域选择应用归属的类别,具体请参见设置应用分类。
- 配置HarmonyOS应用的"开发者服务信息",详情请参见配置开发者服务信息。
- 配置完成后点击"下一步",在弹窗中点击"确认",进入"准备提交"页面,开始设置版本信息。
1.7.2. 配置版本信息
- 配置HarmonyOS应用的"发布国家或地区",详情请参见设置发布国家或地区。
- 设置是否为开放式测试版本。注意HarmonyOS应用开放式测试当前仅支持手机、平板、智能手表。
-
- 如您想发布为开放式测试版本,选择"是",具体配置请参见开放式测试操作指南。
- 正式发布的版本请选择"否"。
-

-
在"软件版本"下点击"软件包管理"后,在弹窗中点击"上传"。

-
在"上传包"窗口中点击"+",上传应用的软件包。上传成功后,您可在"软件包管理"窗口中执行如下操作:
-

-
配置"审核加急"。
-
- 是否加急:配置为"不加急",您的应用将按照正常的流程进行审核上架。配置为"加急",系统会优先处理该应用的上架审核任务。若您的应用符合上架条件,将在2小时之内完成上架,同时会扣除一次加急机会。若您的应用被审核驳回,在驳回后的12小时内提交的审核或反馈,将被优先审核,被驳回的情况下不会扣除加急机会。
- 加急类型:当前加急类型包括临时漏洞、临时活动、其他。若配置为"临时漏洞",则表示您需要紧急修复缺陷;配置为"临时活动"表示正在进行一项商业类活动。
- 加急说明:您可在此对加急审核上架进行描述,以便运营人员快速处理审核任务。
-

说明
-
- "审核加急"配置当前仅在中国大陆地区开放。
- 在一个自然年内,一个应用有3次加急机会。
- "审核加急"配置当前受限开放,在使用此功能前,您需要向华为运营人员发送申请邮件,华为运营人员将在1-3个工作日内为您安排对接人员。
-
-
- 邮箱地址:agconnect@huawei.com
- 邮件标题:[申请使用HarmonyOS应用加急审核上架]-[应用名称]-[APPID]-[公司名称]-[开发者账号ID],开发者帐号ID查询方法请参见查询开发者帐号ID及项目ID。
-
- 配置HarmonyOS应用的"付费情况",具体请参见设置应用付费情况。注意
-
- 当前仅智能手表应用支持付费能力,其他设备类型的HarmonyOS应用仅支持免费下载。因此,当"支持设备"仅选择"手表"且"可兼容设备"仅选择"智能手表"时,才支持设置"付费情况"为"付费"。
- 智能手表应用的付费下载能力目前仅对受邀开发者开放。如有需求,请向华为运营人员申请开通。在收到您的申请后,华为运营人员将在1-3个工作日内为您安排对接人员。申请方法如下:
-
-
- 申请邮箱地址:agconnect@huawei.com。
- 邮件标题:[申请开通智能手表应用付费下载能力]-[应用名称]-[公司名称]-[开发者帐号ID],开发者帐号ID查询方法请参见查询开发者帐号ID及项目ID。
-
-
- 付费下载的HarmonyOS应用不支持设置促销价。
-
选择应用内资费类型,即用户在使用应用过程中的付费类型,如因使用道具、开通会员等进行的付费。支持多选。

-
在"内容分级"区域,点击"设置",按实际情况填写调查问卷,填写完成将获取当前应用的年龄分级结果。具体请参见设置内容分级。
-
如果涉及以下场景,请填写HarmonyOS应用的"应用隐私说明",否则直接进行下一步。
-
-
如检测到应用软件包涉及获取敏感隐私权限,您需为每个敏感权限项填写相应的权限说明,每条权限说明最大支持500字符。

-
如检测到您的应用软件包涉及获取受限权限,您需为每个受限权限项填写相应的权限说明,并上传视频说明使用场景。
-
-
-
- 权限说明:每条权限说明最大支持500字符。
- 使用场景视频:支持MOV或MP4格式,大小500MB以内。仅支持上传一个视频。
-
-
-
注意 如果您的软件包声明要求使用受限权限,请确保您在创建发布Profile时已经申请该权限,否则您的应用上架审核将会被驳回。如您尚未申请,请重新申请发布Profile,然后重新上传软件包。

-
如检测到您的应用软件包涉及获取ACL权限,您需为每个ACL权限项说明使用场景。注意 如果您的软件包声明要求使用ACL权限,请确保您在创建发布Profile时已经申请该权限,否则您的应用上架审核将会被驳回。如您尚未申请,请重新申请发布Profile,然后重新上传软件包。

-
-
-
- 使用场景视频:通过视频说明权限使用场景,支持MOV或MP4格式,大小500MB以内。
- 使用场景说明:可通过选择AGC提供的场景标签或者自定义文字来说明权限使用场景。自定义权限说明不得超过500字符。

-
- 在"隐私声明"区域提供隐私声明链接。
-
- 隐私政策网址:该网站将供用户访问,从而了解服务是如何处理敏感的用户数据和设备数据。
- 隐私权利:提供用户实施其权利的相关网站,例如:删除、修改、导出个人数据的入口。
-
根据应用是否收集用户的信息数据选择是否在华为应用市场的应用详情页展示隐私标签,告知用户您的应用如何使用个人数据,具体请参见录入隐私标签信息。注意 只有支持手机、平板或大屏的HarmonyOS应用才需配置隐私标签信息录入。

-
在"版权信息"区域上传发布HarmonyOS应用所需的资质材料。

版权信息根据应用的类型和应用的发布区域要求略有不同。
-
- 应用发布范围包含中国大陆:
-
-
- 电子版权证书:可选。可上传应用或游戏的PDF格式"电子版权证书",大小不超过5MB。如果您上传了非PDF格式的文件或是将非PDF格式的文件的扩展名改为PDF,均会弹出错误提示。
- 应用版权证书或代理证书:手机应用必选。支持JPG、PNG、BMP格式,默认展示五个图片上传框,您可点击虚线框内的"+"号继续添加。最多添加10张图片,每张图片不超过15MB。
-
-
- 应用发布范围不包含中国大陆:
-
-
- 电子版权证书:可选。可上传应用或游戏的PDF格式"电子版权证书",大小不超过5MB。如果您上传了非PDF格式的文件或是将非PDF格式的文件的扩展名改为PDF,均会弹出错误提示。
- 应用版权证书或代理证书:可选。支持JPG、PNG、BMP格式,默认展示五个图片上传框,您可点击虚线框内的"+"号继续添加。最多添加10张图片,每张图片不超过15MB。
-
- 说明 关于版权资质文件的具体要求,请参考应用资质审核要求。如您的版权资质图片超过了最大支持数量,建议您将图片进行拼接后再上传。
- 如HarmonyOS应用属于游戏类且支持设备包含手机或者路由器,请按要求填写游戏版号信息。

-
-
版号信息:必填,您需要向相关单位申请游戏版号,版号不超过50字符。
-
版号证明:必选,需上传"版号批文"或"版号授权书",图片格式支持JPG、JPEG、PNG、PDF。默认展示三个图片上传框,您可点击虚线框内的"+"号继续添加。最多添加5张图片,每张图片不超过4MB。若您上传了版号授权书,还需填写"授权书有效期"。

说明 关于版权和版号文件的具体要求,请参考应用资质审核要求。如您的版号资质图片超过了最大支持数量,建议您将图片进行拼接后再上传。
-
- 根据《工业和信息化部关于开展移动互联网应用程序备案工作的通知》,自2023年9月初起,在中国大陆地区提供互联网信息服务的APP开发者,需要依法履行APP备案手续,并通过APP分发平台的备案信息核验。点击一图读懂APP备案,可了解APP备案的流程与要求。凡在AGC新上架或升级的应用,如发布地区包含中国大陆,必须先通过应用的网络服务接入商完成APP备案,然后在应用上架时提供备案信息用于核验,核验通过后才允许上架。您可先前往ICP/IP地址/域名信息备案管理系统查询当前应用是否已备案;如尚未备案,请联系对应的网络服务接入商完成备案。关于如何选择接入商,需要根据您所选择的服务器提供商而定。目前常见的接入商有:华为云、阿里云、腾讯云。
- 备案成功后,请使用您备案时的证件信息填写"备案信息"栏。
-
- 如"主体类型"选择"企业",请填写统一社会信用代码,长度不超过18个字符,仅支持英文字母和数字。说明 统一社会信用代码可通过全国组织机构统一社会信用代码查询平台获取。
- 如"主体类型"选择"个人",请填写个人身份证号,长度为15或18字符,仅支持英文字母和数字。
- 如"主体类型"选择"机构",请填写组织机构代码,长度不超过64个字符,仅支持英文字母、数字和中划线(-)。
HarmonyOS赋能资源丰富度建设(第四期)-吴东林
