当前位置: 首页 > news >正文

鸿蒙Next开发真机调试签名申请流程

背景:

在学习鸿蒙next开发应用的初期总是会遇到一堆的问题,毕竟鸿蒙next开发不管是他的ArKTS语言还是他的开发工具DevEco Studio都还在起步阶段,就像当初的Android起步一样,总会有资料不足的一些问题。就比如我们学习下载完DevEco Studio创建第一个鸿蒙Next应用Hello World之后想在真机上跑起来看下效果就会遇到签名无法运行等问题。这里我们就简单记录DevEco Studio自动签名和手动签名的流程。

一、注册

在签名之前我们需要先注册登录华为开发者平台

    

二、自动签名

        在调试阶段,我们可以使用DevEco Studio的自动签名来完成应用的签名。

在DevEco Studio中选择File > Project Structure > Project > Signing Configs窗口中,勾选“Automatically generate signature”自动签名选项(如果是HarmonyOS应用,请勾选“Support HarmonyOS”)

这时候会显示让登录,直接点击登录刚刚注册的开发者平台即可。

这时候返回DevEco Studio就可以看到自动签名的信息了

注意:这个过程中需要USB链接手机,否则就会提示未检测到设备

完成自动签名后就可以运行安装应用到设备上看效果了。 

三、手动签名

上面的自动签名适用于应用调试阶段,但是如果要发布应用的话,就需要使用手动签名了。在完成手动签名之前,我们先了解下几个基本知识:

  • 证书请求文件:格式为.csr,全称为Certificate Signing Request,包含密钥对中的公钥和公共名称、组织名称、组织单位等信息,用于向AppGallery Connect申请数字证书。
  • Store file:选择密钥库文件,文件后缀为.p12,包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,公钥和私钥对用于数字签名和验证。该文件为生成密钥和证书请求文件中生成的.p12文件。
  • Store password:输入密钥库密码,该密码与生成密钥和证书请求文件中填写的密钥库密码保持一致。
  • Key alias:输入密钥的别名信息,与生成密钥和证书请求文件中填写的别名保持一致。
  • Key password:输入密钥的密码,与生成密钥和证书请求文件中填写的Store Password保持一致。
  • Sign alg:签名算法,固定为SHA256withECDSA。
  • Profile file:格式为.p7b,包含HarmonyOS应用/元服务的包名、数字证书信息、描述应用/元服务允许申请的证书权限列表,以及允许应用/元服务调试的设备列表(如果应用/元服务类型为Release类型,则设备列表为空)等内容,每个应用/元服务包中均必须包含一个Profile文件。
  • Certpath file:数字证书,格式为.cer,由华为AppGallery Connect颁发。选择申请调试证书和调试Profile文件中生成的数字证书文件

1、生成签名证书请求文件

        在生成签名证书之前,我们需要先通过DevEco Studio生成签名证书请求文件,具体步骤如下:

  • 在主菜单栏单击Build > Generate Key and CSR

 

 单击New进行创建

在Create Key Store窗口中,填写密钥库信息后,单击OK。

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

 

在Generate Key and CSR界面中,继续填写密钥信息后,单击Next。

  • Alias:密钥的别名信息,用于标识密钥名称。请记住该别名,后续签名配置需要使用。
  • Password:密钥对应的密码,与密钥库密码保持一致,无需手动输入。

 

在Generate Key and CSR界面,设置CSR文件存储路径和CSR文件名

单击Finish,创建CSR文件成功,可以在存储路径下获取生成的密钥库文件(.p12)、证书请求文件(.csr)和material文件夹(存放签名方案相关材料,如密码、证书等)。

 2、华为开发者平台申请调试证书

 登录AppGallery Connect,选择“证书、APP ID和Profile”

 在左侧导航栏选择“证书、APP ID和Profile > 证书”,进入“证书”页面,点击“新增证书”。

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

 

参数

说明

证书名称

不超过100个字符。

证书类型

选择“调试证书”。

选取证书请求文件(CSR)

证书请求文件需要在DevEco Studio上申请,具体操作请参考生成证书请求文件。

 证书申请成功后,“证书管理”页面展示证书名称等信息。点击“下载”,将生成的证书保存至本地,供后续调试签名使用。

3、开发者平台上注册调试设备

登录AppGallery Connect,选择“证书、APP ID和Profile”。

 在左侧导航栏选择“证书、APP ID和Profile > 设备”,进入“设备”页面

 如需添加单个设备,点击右上角的“添加设备”,在弹出窗口填写设备信息,完成后点击“提交”。

UDID获取方法:

  • 手机的UDID获取方法如下:
  1. 打开“设置 > 关于本机”,多次点击版本号,打开开发者模式。
  2. 打开“设置 > 系统”,在最下方找到“开发人员选项”,打开“USB调试”开关。
  3. 使用PC连接手机后,打开命令行工具,进入HDC目录(一般为:DevEco Studio安装目录/sdk/default/openharmony/toolchains),输入hdc shell bm get --udid命令,获取设备的UDID。

 

  • 平板的UDID获取方法如下:
  1. 打开“设置 > 关于本机”,多次点击版本号,打开开发者模式。
  2. 打开“设置 > 系统”,在最下方找到“开发者模式”,打开“USB调试”开关。
  3. 使用PC连接平板后,打开命令行工具,进入HDC目录(一般为:DevEco Studio安装目录/sdk/default/openharmony/toolchains),输入hdc shell bm get --udid命令,获取设备的UDID。

 

 4、申请Profile

登录AppGallery Connect,选择“证书、APP ID和Profile”。

 在左侧导航栏选择“证书、APP ID和Profile > Profile”,进入“Profile”页面,点击右上角“添加”

 在“添加Profile”页面,填写Profile信息,完成后点击“添加”。

 调试Profile申请成功后,“Profile”页面展示Profile信息。点击“下载”,将生成的Profile保存至本地,供后续签名使用。

 参考官方文档:文档中心

 5、手动配置签名信息

在DevEco Studio中配置密钥(.p12)文件、申请的调试证书(.cer)文件和调试Profile(.p7b)文件。在File > Project Structure > Project > Signing Configs窗口中,取消勾选“Automatically generate signature”(如果是HarmonyOS应用,请勾选“Support HarmonyOS”),然后配置工程的签名信息。

 配置完成后,进入工程级build-profile.json5文件,在“signingConfigs”下可查看到配置成功的签名信息。

参考官方文档:文档中心 

http://www.xdnf.cn/news/889615.html

相关文章:

  • Qt/C++学习系列之QGroupBox控件的简单使用
  • 【TinyWebServer】线程同步封装
  • Raw Denoising 论文,以及如何制作noisy-clean图像对
  • AI问答-vue3+ts+vite:http://www.abc.com:3022/m-abc-pc/#/snow 这样的项目 在服务器怎么部署
  • 亲测解决self.transform is not exist
  • vscode里如何用git
  • TIA博途中的程序导出为PDF格式的具体方法示例
  • [zynq] Zynq Linux 环境下 AXI BRAM 控制器驱动方法详解(代码示例)
  • MYSQL(三)--服务器启动参数与配置
  • 群晖NAS如何在虚拟机创建飞牛NAS
  • ABP VNext 在 Kubernetes 中的零停机蓝绿发布
  • Abaqus载荷与边界条件(Load BC)
  • 将 Jupyter Notebook 的默认存储路径从 C 盘迁移到 D 盘,可以通过以下步骤实现:
  • 【教学类】20250605立体纸盘(3边形-22边形,角度5、10……40,45)
  • TikTok养号指南:从0到1打造防限流账号的实战策略
  • 【西门子杯工业嵌入式-1-基本环境与空白模板】
  • 瞄准企业级智能体,艺赛旗加速业务出海重塑数智生产力
  • 【LeetCode】1061. 按字典序排列最小的等效字符串(并查集)
  • 如何给windos11 扩大C盘容量
  • CICD实战(二)-----gitlab的安装与配置
  • 热门消息中间件汇总
  • 【计算机网络】五种IO模型——非阻塞IO
  • 使用SSH tunnel访问内网的MySQL
  • 工厂模式 + 模板方法模式 + 策略模式的适用场景
  • 消息的幂等性
  • 【笔记】MSYS2 的 MINGW64 环境 全面工具链
  • 3DEXPERIENCE参考属性和实例属性的获取
  • VUE混合开发用哪个PHP框架好?
  • 三级等保框架下质检 LIMS 系统违规操作溯源技术应用实践
  • 极昆仑智慧与数元灵科技达成战略合作