OpenHarmony应用签名方法的步骤

背景
openatom openharmony(以下简称“openharmony”)应用如果需要对外发布就必须要通过应用签名,deveco studio已提供自动签名功能加速应用开发,但自动签名仅限于debug开发,如需对外发布则必须完成release签名。在openharmony中有agc应用商店可以帮助开发者完成release签名,本文将介绍openharmony应用签名方法的步骤,将使用openharmony官方提供的签名工具对hap进行签名。
使用deveco studio完成hap自动签名
打开deveco studio工具,点击右上角project structure进入工程配置页面
点击project -> signing configs,勾选automatically generate signing,点击ok
点击build -> rebuild project 或 build hap都可以编译构建hap包
编辑构建完成后我们可以得到未签名的hap包
这个包可以用于debug调试,但不能用于release正式发布
ide对hap包签名的密码限制
从理论上讲,我们也可以通过deveco studio进行hap包的发布签名,但是官方提供的openharmony.p12文件密码为123456
而ide不支持使用123456这样的简单的密码,它达不到密码安全级别
因此,使用官方加密文件完成签名暂时行不通
我们改变思路,使用命令行方式完成签名,这样可以绕过ide的限制
使用官方开源签名工具完成签名
查阅官方资料发现,官方已经提供了命令行签名工具
https://gitee.com/openharmony/developtools_hapsigner
我们通过修改配置文件、执行脚本,即可完成hap签名具体步骤如下:
1 安装工具依赖环境
安装python3.10(下载链接:https://www.python.org/downloads/),通过命令行验证安装是否成功
安装jdk,配置好环境变量,通过命令行验证安装是否成功
2 将签名工具代码拉取到本地保存,修改配置文件
git clone https://gitee.com/openharmony/developtools_hapsigner.git
修改developtools_hapsignerautosignsignhap.config文件配置
# config.signtool改为hap-sign-tool.jar的绝对路径,可以在dist目录中找到
config.signtool=e:/openharmony/developtools_hapsigner/dist/hap-sign-tool.jar
# common.keystorefile改为openharmony.p12的绝对路径,可以在dist目录中找到
common.keystorefile=e:/openharmony/developtools_hapsigner/dist/openharmony.p12
# app.keypair.keyalias改为openharmony application release
app.keypair.keyalias=openharmony application release
# cert.app.outfile改为openharmonyapplication.pem的绝对路径,可以在dist目录中找到
cert.app.outfile=e:/openharmony/developtools_hapsigner/dist/openharmonyapplication.pem
# sign.profile.outfile改为官方提供的p7b绝对路径,比如launcher代码中提供了launcher.p7b加密文件
sign.profile.outfile=e:/openharmony/signfiles/launcher/launcher.p7b
# sign.app.infile为未签名hap路径
sign.app.infile=e:/openharmony/applications_launcher/product/phone/build/default/outputs/default/phone-launcher-default-unsigned.hap
# sign.app.outfile为签名后的hap保存路径
sign.app.outfile=e:/openharmony/applications_launcher/product/phone/build/default/outputs/default/phone-launcher-signed.hap
3 完成配置文件修改后,执行签名脚本
# 进入签名工具autosign目录
cd e:openharmonydeveloptools_hapsignerautosign
# 执行python脚本
python .autosign.py signhap
签名成功后显示success
到指定目录下可以找到签名后的hap
总结
deveco studio开发工具为开发人员提供了非常友好的hap自动签名功能及非常便捷的debug包。由于ide的安全密码要求,对于release包的发布我们暂时需要手动签名,尤其是系统级的应用。我们可以利用官方提供的签名工具较为容易地完成release包签名,后续可以自行开发gui工具进一步提升签名效率。


直接数字频率合成控制测试、测量和通信中的波形
复印机维修资料
ATA-4315高压功率放大器在高频理疗仪驱动中的应用
英伟达:AI计算的领导者与市场前景展望
三极管开关电路改进接法电路图
OpenHarmony应用签名方法的步骤
区块链技术能否改变邮币卡行业的命运
微软发布全新翻译应用 ,智能对决即将上演
电镀锌的特点
企业存储产业即将在下一个十年迎来新的巨变
三大运营商停售达量限速套餐,是要变相涨价吗
如何使用 Python 来创建一些强大的应用和实用工具
索尼Xperia 1具体参数详细介绍
Intel推出第二代神经计算棒 将满足新一代智能设备的需求
5G消息离成功还需要多久的时间
华为P10:我就是来统治安卓的
塑料的保险箱 你敢用吗?
什么是基于深度学习的超分辨率
干的漂亮!供应部约谈三大运营商不得限制老用户更改套餐
最新解读丨首个电动自行车充电器国家强制性标准即将实施