【无标题】

前言

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种方式:

  1. DevEco Studio 中登录华为开发者账号,采用默认签名配置;

  1. 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

相关推荐
YM52e24 分钟前
ArkTS 2048 手感调优:棋盘渲染与滑动交互
华为·harmonyos
晴天161 小时前
HarmonyOS 和 React 对比-Day22
前端·华为·harmonyos
lilian2333 小时前
Harmony os 技术实战|拼豆制图20:用 finally 关闭 ImageSource、PixelMap 与文件句柄
华为·harmonyos
独守一片天15 小时前
HarmonyOS 鸿蒙碰一碰与跨端协同体验怎么设计?
华为·harmonyos
yuhulkjv33518 小时前
Gemini鸿蒙版导出word格式的终极解法:AI 导出鸭如何重构AI内容落地链路
人工智能·ai·word·harmonyos·ai导出鸭
whyutianict_vv20 小时前
从 Web 前端到 HarmonyOS ArkTS:一次 AI 鸿蒙全栈智能体开发的迁移实录
前端·人工智能·harmonyos
m0_7496902320 小时前
【寻迹校园 HarmonyOS NEXT 实战 01】从校园痛点到可上架 MVP:失物招领应用产品设计
人工智能·深度学习·移动开发·harmonyos·arkts·arkui·产品设计
m0_7496902321 小时前
【寻迹校园 HarmonyOS NEXT 实战 03】NavPathStack 路由实战:18 个页面如何集中管理
华为·移动开发·harmonyos·arkui·navigation·navpathstack
m0_749690231 天前
【寻迹校园 HarmonyOS NEXT 实战 02】多模块工程拆解:entry、HAR 与 HSP 如何分工
华为·harmonyos·arkts·软件架构·har·hsp
用户0934077735141 天前
HarmonyOS WPS Open SDK 实践:用 SdkConstants 判断当前 HAR 形态
harmonyos