1.4.2 鸿蒙应用编译

鸿蒙应用程序在windows下进行开发,需要安装DevEco Studio软件,安装过程请参考“鸿蒙入门”系列教程。

1.4.2.1 准备工作

  • 执行诊断Diagnose

在欢迎页面点击Diagnose,检查编译环境。如果没有问题,如下显示。

鸿蒙系统emulated文件夹在哪_鸿蒙系统emulated文件夹在哪

如果存在错误,请根据提示安装对应的软件。

鸿蒙应用开发必要的软件工具有:nodejs、git、sdk等。

  • 安装sdk

在欢迎页面点击Customize,再点击All settings。

鸿蒙系统emulated文件夹在哪_华为_02

找到左侧的SDK,进入SDK设置,选择OpenHarmony,点击Edit,设置sdk保存的位置。

鸿蒙系统emulated文件夹在哪_华为_03

勾选API Version 10,点击OK。也可以勾选其他版本的API。

如图(这里选择的是API8),点击OK后进行下载。

鸿蒙系统emulated文件夹在哪_应用程序_04

下载过程

鸿蒙系统emulated文件夹在哪_鸿蒙系统emulated文件夹在哪_05

  • 模拟器

DevEco中可以安装HarmonyOS的模拟器,目前(OpenHarmony 4.0Release)并未提供OpenHarmony的模拟器,如果需要调试,必须有OpenHarmony真机。

1.4.2.2 编译

导入示例代码

点击Projects,点击右边的三个点,点击Import Sample。

鸿蒙系统emulated文件夹在哪_应用程序_06

选择OpenHarmony,这里选择2048的例子程序。

鸿蒙系统emulated文件夹在哪_应用程序_07

点击next后,选择存储路径,再点击finish,开始下载。

鸿蒙系统emulated文件夹在哪_华为_08

下载完成后,2048项目被自动打开。

根据右侧报错,点击蓝色链接,先同步项目。

鸿蒙系统emulated文件夹在哪_开发板_09

同步完成后,即可进行编译。选择菜单Build->Rebuild Project,或者Build Haps,进行编译。

鸿蒙系统emulated文件夹在哪_华为_10

1.4.2.3 运行与调试

运行应用程序前,需要连接OpenHarmony开发版,这里使用的是RK3568润和大禹200开发板。接线方法请参照之前的烧录教程。开发板需要事先烧录OpenHarmony对应的系统版本。如果版本不匹配,可能会出现意向不到的情况。这里我们烧录的是4.0release版本,对应的sdk是API10。

接入设备并开机后,会自动显示运行的设备,如果连接了多台设备,可以下拉选择。

鸿蒙系统emulated文件夹在哪_华为_11

点击运行,将程序安装并运行到开发板上。

1.4.2.3.1 解决签名报错

点击运行后报错,原因是应用hap包没有签名,如下图:

鸿蒙系统emulated文件夹在哪_应用程序_12

打开项目设置,找到sign config,勾上自动生成签名,等待签名完成,点击OK。

鸿蒙系统emulated文件夹在哪_开发板_13

再次运行,应用已成功安装

鸿蒙系统emulated文件夹在哪_应用程序_14

可以在开发板上运行应用。

鸿蒙系统emulated文件夹在哪_华为_15

1.4.2.3.2 查看日志

点击下部的log,可以看到运行日志。可以选择不同的设备、筛选关键字。

鸿蒙系统emulated文件夹在哪_应用程序_16

点击new,可以打开最多2个日志窗口

鸿蒙系统emulated文件夹在哪_harmonyos_17

除了hilog,还可以查看faultlog崩溃日志,如下图:

鸿蒙系统emulated文件夹在哪_华为_18

1.4.2.3.3 应用调试

点击“调试“按钮,程序运行到开发板上。打开源码文件src/main/ets/pages/Index.ets,在start按钮执行代码上打上断点,在开发板上点击“start”按钮,程序运行到断点位置,可以查看相关信息。

鸿蒙系统emulated文件夹在哪_harmonyos_19

1.4.2.3.4 预览工具

点击菜单->View->Tool Windows->Previewer,执行编译后,在右边显示应用程序的预览。可以查看程序的布局以及通过鼠标进行操作。

鸿蒙系统emulated文件夹在哪_harmonyos_20

1.4.2.3.5 设备文件浏览

点击菜单->View->Tool Windows->Device File Browser,打开设备文件浏览器,可以浏览设备上的文件。右键可以对文件进行操作(慎重操作,可能造成开发板无法启动)。

鸿蒙系统emulated文件夹在哪_应用程序_21

1.4.2.3.6 hdc工具

除了DevEco的IDE界面,鸿蒙也提供了调试用的命令行工具hdc。

hdc在sdk的toolchains目录下,主要用于连接开发板,与开发板进行交互等。

鸿蒙系统emulated文件夹在哪_开发板_22

注意:请使用与设备API版本对应的hdc,否则可能无法连接鸿蒙设备。

hdc常用的命令有:

#列出所有可连接的设备
.\hdc.exe list targets [-v]
#杀死hdc服务,用于异常时重启服务
.\hdc.exe kill [-r]

#切换到usb模式,默认hdc从usb连接设备。
.\hdc.exe tmode usb
#切换到TCP模式,设置tcp端口。慎重使用,如不清楚设备ip地址无法连接设备,则无法切回usb模式
.\hdc.exe tmode port [port]
#连接到tcp设备
.\hdc.exe tconn ip:port

#把文件发送到开发板上,如果目标分区为只读,需要事先mount
.\hdc.exe file send [option] local remote
#从开发板下载文件,hdc支持文件夹的收发
.\hdc.exe file recv [option] remote local

#安装hap到开发板
.\hdc.exe install -r xxx.hap
#卸载程序
.\hdc.exe uninstall [-k] [-s] package

#进入shell命令行
.\hdc.exe shell
#连接指定设备
.\hdc.exe shell -t xxxx

#挂载根分区为读写模式
.\hdc.exe shell mount -o remount,rw /

#打印hilog日志,这里与IDE里的日志一样
.\hdc.exe shell hilog