你只需要一行命令,搞定harmony 应用的构建,签名,上传与内测分发。简化开发流程,提高开发效率。
- 打包:自动打出所有的 hap 包。
- 签名 manifest.json5:读取应用打包数据,自动生成已签名的
manifest.json5文件。 - 生成分发页面:自动生成分发页面
- 二维码生成:自动生成应用的二维码,方便内测人员快速下载和安装。
- cdn/OSS/ftp 上传:可将打包好的所有文件上传到cnd/oss/ftp 。
- 机器人通知 以钉钉机器人为例,打包完成后自动发出通知,将分发页面链接自动发送群聊
JDK 8+: 官方签名工具需要。
ruby 3.0+ :二维码生成库需要
Command Line Tools for HarmonyOS :鸿蒙应用开发官方命令行工具
manifest-sign-tool:生成应用签名工具
签名工具可以点击链接获取,存放到本地。
# 在你使用的终端中,检查以下工具是否成功安装:
java --version # 生成签名工具需要使用到
ruby --v # fastlane工具是基于ruby脚本
hvigorw -v # command-line-tool 配置完即可用
ohpm -v # 或 command-line-tool 配置完即可用
在使用本脚本之前,建议先阅读一下华为官方给出的HarmonyOS应用内部测试指导文档
文档里官方给出的流程图如下:

准备工作,你需要生成这三个文件:
1、发布证书: .cer 格式
2、内部测试 Profile: .p7b 格式
3、私钥文件: .p12 格式
需要可使用的oss环境,可以是某里云,某为云的oss,作为包上传存储的地方。
将fastlane文件夹和Gemfile脚本,拖拽到你的代码项目里。例如demo文件夹
打开fastlane/FastConfig.yaml,根据你的实际情况,修改配置
app_name: #app名称
# 编译相关参数
# 签名工具存放路径,从user路径开始
sign_tool_path: "/manifest-sign-tool"
# 编译时的版本
compatibleSdkVersion: ""
# 服务兼容的最低版本
targetSdkVersion: ""
# 钉钉聊天机器人 选填
robot_webhook_url: # 例如钉钉自定义机器人的地址
# cdn-oss上传参数
cdn_param: "param"
cdn_upload_api: "http://your_domain/upload.do"
public_cdn_url: 'https://your_domain/cdn-oss/'
# 域名
deploy_domain: 'your_domain' #需和cdn保持一致
# 图标素材url
icon_url: 'https:your_domain/path/icon.png'compatibleSdkVersion需要跟代码工程里使用的sdk版本匹配
targetSdkVersion也是如此
主要是适配upload_to_server这个子函数的详细参数,不同的服务器,所需参数不同,需要自行根据实际情况适配oss/cdn的业务参数。建议将业务配置,放到FastConfig.yaml配置文件,在upload_to_server这个lane中,将业务参数拼接
params = {
#业务参数
"business_param" => "xxxx",
"file" => Faraday::UploadIO.new(filePath, 'application/hap', fileName),
}
temple.html为下载页模板,里面的icon路径使用的相对路径,可视情况考虑写死一个url链接。 模板颜色可以自行调整css。样式布局不满意,也可自行找其他模板代替,只要保证$开头的变量保持一致即可。
脚本里预制了3个环境,分别是sit,uat,pro 那么执行脚本只需要cd到项目目录,直接
fastlane sit/uat/pro
即可一键构建hap包,生成签名json,上传到服务器,生成下载页面,发送钉钉通知
如果接了钉钉或者蓝信之类IM软件,可以会自动收到通知(需要提前配置好群聊机器人)。点击机器人的消息卡片,可以自动展示用html模板生成下载页面以及二维码。
