鸿蒙应用开发—鸿蒙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

相关推荐
Liaiyang6637 分钟前
空圈容错视角-HarmonyOS 7 架构体检:从被动容错到主动免疫的真伪验证与生态反推
操作系统·harmonyos·架构设计·ai-agent·端云协同·鸿蒙7·空圈容错
贾伟康1 小时前
【共创稿事节】HarmonyOS 7.0 Native XComponent与FFI:从接入到生产验证
harmonyos·profiler·hitracemeter·性能追踪·时间线
taller_20001 小时前
【012】数据类型入门: Excel 数据到 Python 值的转换
python·excel·pie·py
淡漠的蓝精灵1 小时前
web.py:一个简单到极致的 Python Web 框架
开发语言·前端·python·其他
起个名字费劲死了2 小时前
Halcon学习一:骰子识别
前端·python·学习
redtank20002 小时前
纯血鸿蒙本地电子书阅读器实测:九格式支持、沉浸阅读与零联网隐私设计
华为·harmonyos
贾伟康2 小时前
【共创稿事节】HarmonyOS 7.0 HiSysEvent系统事件订阅:从接入到生产验证
harmonyos·可观测性·hisyevent·系统事件·后台优化
eric-sjq2 小时前
小思框架 · 30M 级长上下文新架构对比技术报告
人工智能·python·深度学习·语言模型
huainingning4 小时前
华为E1专线使用与配置案例
华为
reasonsummer4 小时前
【办公类-04-05】20261030整理手机照片(华为手机助手导出照片到日期文件夹+批量添加四级文件夹+手动转移照片更名+更改三级文件夹合并汉字名称)
python·智能手机