鸿蒙应用开发—鸿蒙app一键安装脚本

背景

当鸿蒙App开发完后需要提测,如何将App文件发给QA安装测试,是一件麻烦事,因为鸿蒙App并不能像Android Apk那样可以直接安装到设备中,能想到的方式有:

  • 直接叫测试拿手机过来安装
  • 让测试安装DevEco Studio 拉代码编译安装

上面的方式显然是不可取的,鸿蒙App的安装过程相对复杂,需要手动执行一系列命令行操作,为了简化这个过程,可以通过一个脚本从而实现一键安装。如果再结合构建脚本,可以实现打包、发布、安装一条龙,减少中间手动环节。

当然官方也提供了邀请链接和DeepLink链接方式,但这两种方式是需要审核或者专业的>组织内部发布证书,对及时响应并不友好。

鸿蒙app一键安装脚本

可以像安卓一样在电脑上执行命令行来安装鸿蒙应用,支持在windows和mac上运行。

准备工作

使用前请确保你的电脑上已经安装并配置了环境变量:

  • Windows:Java JDK 17 或更高版本; Mac: Java JDK 11 或更高版本
  • Python 3

使用方法

安装脚本

命令:

复制代码
python ohos-app-install.py <包名> <app文件路径> [签名文件下载链接]

参数:

  • 第1个参数:应用包名
  • 第2个参数:app文件路径,可以是网络链接,也可以是本地文件路径
  • 第3个参数:签名文件的下载链接,可选的,首次使用或更新签名时需要,有固定的格式。

例子:

复制代码
python ohos-app-install.py com.hzw.dsbridge dsbrige-demo-default-unsigned.app https://gitee.com/common-apps/ohos_tools/raw/master/sign.zip

或者直接通过网络链接安装:

复制代码
python ohos-app-install.py com.hzw.dsbridge https://gitee.com/common-apps/ohos-py/raw/master/dsbrige-demo-default-unsigned.app

sign.zip 的文件格式如下:

复制代码
ohos-app-install.py
sign
├── sign-config.json # 配置文件
└── yyy/            # 证书目录
  └── xxx.cer       
  └── xxx.p7b  
  └── xxx.p12

sign-config.json 的文件格式如下:

json 复制代码
{
    "configs": [
        {
            "package_name": "com.hzw.dsbridge",
            "app_cert_file": "sign/yyy/xxx.cer",
            "profile_file": "sign/yyy/xxx.p7b",
            "keystore_file": "sign/yyy/xxx.p12",
            "key_alias": "hzw",
            "key_pwd": "h123456789",
            "keystore_pwd": "h123456789"
        }
    ]
}

注意:测试环境仅提供测试签名文件。在正式环境中,应用签名应该在服务器端完成以确保安全性。 签名文件除了命令行链接下载,还可以按照格式放在脚本同目录下 。

生成exe/unix执行文件 - 可选

如果想更方便的使用,可以将脚本转换为可执行文件,Windows和Mac都支持。

创建配置,在根目录创建confog.json,内容如下:

复制代码
{
    "app_url": "",
    "package_name": "",
    "sign_url": ""
}

生成执行文件命令:

复制代码
pyinstaller ohos-gen-app.spec

如果在执行pyinstaller命令时报错command not found: pyinstaller,则需要安装pyinstaller 执行pip3 install pyinstaller,在安装过程报错 error: externally-managed-environmen,可以在虚拟环境中安装,如下:

复制代码
# 创建虚拟环境
python3 -m venv venv
# 激活虚拟环境
source venv/bin/activate
# 安装 pyinstaller
pip install pyinstaller

源码

https://gitee.com/common-apps/ohos-py

相关推荐
SelectDB11 小时前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
ONEDAY19 小时前
HarmonyOS 深色模式适配实践:从资源、WebView 到网络图统一处理
harmonyos
荣码19 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
金銀銅鐵1 天前
[Python] 基于欧几里得算法,实现分数约分计算器
python·数学
Lyn_Li1 天前
Kaggle Top 5 | 198只股票、200条数据的金融预测——BattleFin高分方案从零复现
python·kaggle·比赛复盘·金融预测
小九九的爸爸2 天前
前端想要入门Agent开发,要具备哪些Python基础?
python·agent·ai编程
阿耶同学2 天前
手把手教你用 LangGraph 搭建三层嵌套 Agent 架构
python·程序员
鸿蒙开发2 天前
鸿蒙(HarmonyOS NEXT)表单校验别再手撸正则了 —— 我写了个 ArkTS 版 zod
harmonyos
TrisighT2 天前
ArkTS 的 @BuilderParam 你八成只用了皮毛——那个尾随闭包写法差点被我当 bug 删了
harmonyos·arkts·arkui
花酒锄作田2 天前
Pydantic校验配置文件
python