学习鸿蒙-应用市场申请签名

1.需要的文件概念

.cer / .p7b / .p12 / .csr

HarmonyOS应用/服务通过数字证书(.cer文件)和Profile文件(.p7b文件)来保证应用/服务的完整性。在申请数字证书和Profile文件前,首先需要通过DevEco Studio来生成密钥(存储在格式为.p12的密钥库文件中)和证书请求文件(.csr文件)。

  • 密钥( .p12**)**:包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,格式为.p12,公钥和私钥对用于数字签名和验证。
  • 证书请求文件( .csr**)**:格式为.csr,全称为Certificate Signing Request,包含密钥对中的公钥和公共名称、组织名称、组织单位等信息,用于向AppGallery Connect申请数字证书。
  • 数字证书( .cer**)**:格式为.cer,由华为AppGallery Connect颁发。
  • Profile文件( .p7b**)**:格式为.p7b,包含HarmonyOS应用/服务的包名、数字证书信息、描述应用/服务允许申请的证书权限列表,以及允许应用/服务调试的设备列表(如果应用/服务类型为Release类型,则设备列表为空)等内容,每个应用/服务包中均必须包含一个Profile文件

2.生成密钥(.p12)和证书请求文件(.csr)

生成密钥(.p12):在主菜单栏单击Build > Generate Key and CSR

生成证书请求文件(.csr):

在.p12基础上生成证书请求文件(.csr)

3.生成.p12和.csr后,申请发布证书和Profile文件

AppGallery Connect

登录华为应用市场,将生成的.p12和.csr上传到上面,向AppGallery Connect申请发布证书和Profile文件。

1.选择**"** 证书、APP ID和Profile**"**。

2.创建应用,在app id里面创建应用

3.新增证书

4.下载cer:证书申请成功后,"证书管理"页面展示证书名称等信息。点击"下载",将生成的证书保存至本地,供后续发布签名使用。

5.申请发布Profile

申请后,就可以下载.p7b

4.项目使用签名

在同包名的项目中,在ide签名加入签名文件和输入密码,在build-profile.json5文件中则填充这些签名,密码被加密显示

复制代码
{
  "app": {
    "signingConfigs": [
      {
        "name": "default",
        "type": "HarmonyOS",
        "material": {
          "storePassword": "000000189824458A4947E66987E27DCE6D75C6B8A48D8C0921DF8261B475C63DC06838D7A5531A9C",
          "certpath": "secure/debug/debug.cer",
          "keyAlias": "debug",
          "keyPassword": "000000187DC1F57F5994DF20F76812C0A48C18BBF94780D79DAF13CA9DFFA924238C883F76FDA6BB",
          "profile": "secure/debug/debug.p7b",
          "signAlg": "SHA256withECDSA",
          "storeFile": "secure/debug/debug.p12"
        }
      }
    ],
}
相关推荐
诸葛悠闲1 小时前
XCP协议在以太网上实现的配置
学习
爱笑的眼睛112 小时前
我的HarmonyOS百宝箱
华为·harmonyos
2501_919749032 小时前
鸿蒙:创建公共事件、订阅公共事件和退订公共事件
华为·harmonyos
遇印记3 小时前
大二java学习笔记:二维数组
java·笔记·学习
爱吃甜品的糯米团子3 小时前
Linux 学习笔记之进程管理、网络基础与常用软件安装
linux·网络·学习
我是华为OD~HR~栗栗呀3 小时前
华为od-21届考研-C++面经
java·c语言·c++·python·华为od·华为·面试
安防视频中间件/视频资源汇聚平台4 小时前
华为结构化摄像机接入到SVMSPro平台操作流程
华为·信息可视化·实时音视频·svmspro
Purple Coder4 小时前
面试-上海电力大学研一的学习经验
学习
饮浊酒6 小时前
Python学习-----小游戏之人生重开模拟器(普通版)
python·学习·游戏程序
QT 小鲜肉6 小时前
【个人成长笔记】在Ubuntu中的Linux系统安装 anaconda 及其相关终端命令行
linux·笔记·深度学习·学习·ubuntu·学习方法