前言
2022年9月6日,DevEco Studio 3.0 Release 正式对外发布,DevEco Studio 3.0 支持 HarmonyOS 3.0 的应用及服务开发,同时也支持 OpenHarmony 应用及服务开发。该版本的开发工具,支持将 OpenHarmony 应用编译成在 HarmonyOS 设备上运行的 hap 应用。
开发工具
DevEco Studio 3.0 Release(3.0.0.993)
备注:华为内网需要配置 npm 代理
strict-ssl=false
sslVerify=false
registry=https://mirrors.tools.huawei.com/npm/
@ohos:registry=https://cmc.centralrepo.rnd.huawei.com/artifactory/api/npm/product_npm/
系统版本
API 版本
目前仅支持 api 8 版本的 OpenHarmony 应用运行至 HarmonyOS3 设备上。
HarmonyOS版本
HarmonyOS3
备注:HarmonyOS设备在 设置-关于手机 可以查看当前HarmonyOS系统版本。
编译步骤
下面讲述如何将 OpenHarmony 应用编译成在 HarmonyOS 设备上运行的 hap 应用。
创建 OpenHarmony 应用
在 DevEco Studio 3.0 Release 创建 OpenHarmony 应用,Compile SDK 选项选择 API 8 FA 模式,Language 选项可以选择 ETS 声明式开发框架,也可以选择 js WEB 范式开发框架。
当 OpenHarmony 应用创建成功后,通过配置签名,编译打包,可以运行至OpenHarmony设备上。同样,可以修改一定的配置文件,编译出能够运行在 HarmonyOS 设备上的 hap 应用。
配置 build-profile.json5
编辑 entry 目录下的 build-profile.json5,在 targets 节点下,新增 runtimeOS 配置。
{
"apiType": 'faMode',
"buildOption": {},
"targets": [
{
"name": "default",
"runtimeOS": "HarmonyOS" // 添加HarmonyOS配置
},
{
"name": "ohosTest",
}
]
}
配置 config.json
编辑 entry 目录下的 config.json,将 deviceType节点下的 default 修改为 phone。
{
......
"module": {
"package": "com.example.openharmonytoharmonyos",
"name": ".entry",
"mainAbility": ".MainAbility",
"deviceType": [
"phone", // default 修改为 phone
"tablet"
]
......
}
}
编译签名
在修改上述的配置后,USB 链接 HarmonyOS 设备后,需要重新配置签名才可以运行至 HarmonyOS 设备。
配置签名有2种方式:
-
DevEco Studio 中登录华为开发者账号,采用默认签名配置;
-
在 AppGallery Connect 新建项目,配置对应的签名文件以及真机信息。具体可以参考DevEco Studio 使用指南(HarmonyOS)- 编译构建- 通过命令行方式构建应用或服务 章节中的内容。
HAP安装
编译出的 hap 通过 hdc 命令安装至HarmonyOS 设备。hdc(HarmonyOS Device Connector)是 HarmonyOS 为开发人员提供的用于调试的命令行工具,通过该工具可以在windows/linux/mac系统上与真实设备或者模拟器进行交互。hdc工具通过 HarmonyOS sdk获取,存放于sdk的toolchains目录下。使用前请将 sdk的 toolchains目录添加到环境变量。
hdc app install -r
E:\ideProjects\MyApplication80000\entry\build\outputs\hap\debug\entry-debug-rich-unsigned.hap
参考文献
[1] hdc使用指导. https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide-command-line-hdc-0000001237908229