1. HarmonyOS签名打包并安装

1.1. 基本概念

  HarmonyOS应用通过数字证书(.cer文件)和Profile文件(.p7b文件)来保证应用的完整性,数字证书和Profile文件可通过申请发布证书和Profile文件获取。
  申请数字证书和Profile文件前,首先需要通过DevEco Studio来生成密钥文件(.p12文件)和证书请求文件(.csr文件)。同时,也可以使用命令行工具的方式来生成密钥文件和证书请求文件。
  • 密钥:包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,格式为.p12,公钥和私钥对用于数字签名和验证。
  • 证书请求文件:格式为.csr,全称为Certificate Signing Request,包含密钥对中的公钥和公共名称、组织名称、组织单位等信息,用于向AppGallery Connect申请数字证书。
  • 数字证书:格式为.cer,由华为AppGallery Connect颁发。
  • Profile文件:格式为.p7b,包含HarmonyOS应用的包名、数字证书信息、描述应用允许申请的证书权限列表,以及允许应用调试的设备列表(如果应用类型为Release类型,则设备列表为空)等内容,每个应用包中均必须包含一个Profile文件。

1.1.1. 步骤

官方文档
步骤

1.1.2. 流程

官方文档-应用/服务发布
发布HarmonyOS应用
在这里插入图片描述

1.2. 基本操作

1.2.1. 密钥和证书请求文件

  使用DevEco Studio生成密钥和证书请求文件
  (1) 在主菜单栏点击Build > Generate Key and CSR。
在这里插入图片描述
  如果本地已有对应的密钥,无需新生成密钥,可以在Generate Key界面中点击下方的Skip跳过密钥生成过程,直接使用已有密钥生成证书请求文件。
  (2) 在Key Store File中,可以点击Choose Existing选择已有的密钥库文件;如果没有密钥库文件,点击New进行创建。下面以新创建密钥库文件为例进行说明。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2.1.1. 密钥(p12)

在这里插入图片描述
  密码必须至少包含8个字符,并包含以下任意两个字符:
  1.小写字母:a-z
  2.大写字母:A-Z
  3.数字:0-9
  4.特殊字符:“`~!@$%^ *()-=+\\[{}];:”,.>/
在这里插入图片描述
  名字和姓氏的值可以包含0到64个字符,仅包括大写字母、小写字母和空格。

1.2.1.2. 证书请求文件(csr)

在这里插入图片描述

1.2.2. 发布证书和Profile文件

AppGallery Connect
在这里插入图片描述
  通过生成的证书请求文件,向AppGallery Connect申请发布证书和Profile文件。
(1) 创建您的AGC项目;
(2) 创建HarmonyOS应用;
(3) 申请发布证书和Profile文件。

1.2.2.1. 应用发布证书

  一个账号最多可申请1个发布证书,2个调试证书。
(1)登录AppGallery Connect网站,在网站首页中点击“用户与访问”。
在这里插入图片描述
(2)在左侧导航栏点击“证书管理”,进入“证书管理”页面。
在这里插入图片描述
(3)点击“新增证书”,弹出“新增证书”窗口。
(4)在“新增证书”窗口中填写要申请的证书信息,点击“提交”。
在这里插入图片描述
  证书申请成功后,“证书管理”页面展示“证书名称”、“证书类型”,“失效日期”和“操作”列信息。
  在“操作”列点击“下载”,可下载证书。
  在“操作”列点击“废除”,且在弹出的“提示”窗口中点击“确认”,可废除证书。
  说明:如证书已过期,“失效日期”列展示“已于YYYY-MM-DD过期”。您可以下载或废除过期证书。
在这里插入图片描述
在这里插入图片描述

1.2.2.2. 添加设备

在这里插入图片描述

1.2.3. Profile文件

  一个账号最多可申请100个Profile文件。
(1)登录AppGallery Connect网站,在网站首页中点击“我的项目”。
(2)找到您的项目,点击您创建的HarmonyOS应用。
(3)在左侧导航栏选择“HarmonyOS应用 > HAP Provision Profile管理”,进入“管理HAP Provision Profile”页面。
在这里插入图片描述
(4)点击右上角“添加”,弹出“HarmonyAppProvision信息”窗口。
(5)在弹出的“HarmonyAppProvision信息”窗口中添加Profile。
在这里插入图片描述
(6)发布Profile申请成功后,“管理HAP Provision Profile”页面展示“名称”、“类型”、“证书”、“失效日期”和“操作”列信息。
在这里插入图片描述
(7)在“操作”列点击“下载”,可下载Profile文件。
(8)在“操作”列点击“删除”,且在弹出的“提示”窗口中点击“确认”,可删除Profile文件。

1.2.4. 打包

1.2.4.1. 签名配置

  DevEco Studio 中 File >Project Structure > project > Signing Configs进行配置
在这里插入图片描述

1.2.4.2. 位置

在这里插入图片描述
  app包仅用于上架应用市场,是最终release上架包;hap包为调试版本,调试应用过程中可以使用hap进行运行,同时app包无法通过hdc命令安装,hap调试包可通过hdc app install xxx.hap进行安装。
在这里插入图片描述

1.2.5. 获取设备UDID

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2.5.1. 找到SDK的位置

(1)方法1
  在主菜单栏点击Tool > SDK Manager。
在这里插入图片描述
(2)方法2
在这里插入图片描述

1.2.5.2. 找到hdc.exe

在这里插入图片描述

1.2.5.3. 查找

根据命令行查找
hdc.exe shell bm get -udid
在这里插入图片描述

1.2.5.4. hdc命令安装hap包

在这里插入图片描述
在这里插入图片描述
(1)第一步
cd D:\Harmoney\Sdk\toolchains
(2)第二步
hdc file send D:\Harmoney\JavaProject\Sdqlet\entry\build\outputs\hap\debug\entry-debug-rich-signed.hap /sdcard/zzs/entry-debug-rich-signed.hap
(3)第三步
hdc shell bm install -p /sdcard/zzs/

1.3. 签名打包所需文件

在这里插入图片描述

1.4. 流程操作

1.4.1. 第一步

在这里插入图片描述

1.4.2. 第二步:创建.p12文件,点击New如果有的话就Choose Existing

在这里插入图片描述
填好下面信息
在这里插入图片描述
点击Next进入到下面界面
在这里插入图片描述
开始生成csr文件如下图
在这里插入图片描述
点击OK–>Finish 文件保存在了下面目录
在这里插入图片描述
在这里插入图片描述

1.4.3. 第三步 访问华为开发者平台,登录开发者账号,进入控制台

华为开发者平台地址:
AppGallery Connect
创建应用
在这里插入图片描述

点击证书
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个时候我们就有.p12文件和一个.cer文件

1.4.4. 第四步:生成.p7文件

点击profile项
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.4.5. 第五步,打开鸿蒙开发工具

在这里插入图片描述
依次填好下面参数 点击OK
在这里插入图片描述
在工程的这个文件里,填写签名配置,相当于之前Android的debug,release
在这里插入图片描述
打包 Build–>Build Hap(s)
   app包仅用于上架应用市场,是最终release上架包;hap包为调试版本,调试应用过程中可以使用hap进行运行,同时app包无法通过hdc命令安装,hap调试包可通过hdc app install xxx.hap进行安装。
在这里插入图片描述
生成.hap文件
在这里插入图片描述
    然后就是安装haps,先配置一下hdc环境变量,相当于Android的 adb
   来到开发工具安装目录,我的是在这里
在这里插入图片描述
添加好环境变量执行安装命令
hdc install xxx.hap

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐