OpenHarmony工程在HarmonyOS上运行
说实话,我还真没试过,但是我们也应该做一个尝试不是。
前提条件
有一台鸿蒙手机,HarmonyOS3,创建的是API8及以下的应用。
我们创建的是API8的应用。
我们都知道HarmonyOS应用/服务调试支持使用真机设备调试。使用真机设备进行调试前,需要对HAP进行签名。而OpenHarmony则只需自动签名就好了。详细的调试流程如下图所示:
了解了真机设备的调试流程之后,我们就开始今天的验证。
配置签名信息
针对原子化服务和应用的签名,DevEco Studio为开发者提供了自动化签名方案,帮助开发者高效进行调试。也可选择手动方式对应用/服务进行签名。
-
连接真机设备,确保DevEco Studio与真机设备已连接,真机连接成功后如下图所示:
-
进入File > Project Structure > Project > Signing Configs界面,勾选“Automatically generate signature”(如果是API8工程,需同时勾选“SupportHarmonyOS”),即可完成签名。如果未登录,请先单击Sign In进行登录,然后自动完成签名。
签名完成后,如下图所示:
设置调试代码类型
API Version 8的工程调试类型默认为Js Only,支持调试eTS和JS代码。如果需要调试C/C++代码,请将调试器的调试类型选择Native Only。大家可以根据下表来判断。
关于各调试类型的说明如下表所示:
调试类型 | 调试代码 |
---|---|
Java Only | 仅调试Java代码 |
Js Only | 仅调试JavaScript代码 |
Native Only | 仅调试C/C++代码 |
Dual(Js + Java) | 调试JS FA调用Java PA场景的JS和Java代码 |
Dual(Java + Native) | 调试C/C++工程的Java和C/C++代码 |
Detect Automatically | 新建工程默认调试器选项,根据调试的工程类型,自动启动对应的调试器。说明JS+Java混合工程中,如果需要单独调试Java代码,需要手动修改Debug Type为“Java”。 |
单击Run > Edit Configurations > Debugger,在HarmonyOS App中,选择相应模块, 可以进行Java/JS/C++调试配置。
设置HAP包安装方式
在调试阶段,HAP包在设备上的安装方式有2种,可以根据实际需要进行设置。
-
安装方式一:先卸载应用/服务后,再重新安装,该方式会清除设备上的所有应用/服务缓存数据(默认安装方式)。
-
安装方式二:采用覆盖安装方式,不卸载应用/服务,该方式会保留应用/服务的缓存数据。
设置方法如下:
单击Run > Edit Configurations,设置指定模块的HAP包安装方式,勾选“Keep Application Data”,则表示采用覆盖安装方式,保留应用/服务缓存数据。
如果一个工程中同一个设备存在多个模块(如Phone设备,存在entry和feature模块),且存在模块间的调用时,在调试阶段需要同时安装多个模块的hap包到设备中。此时,需要在待调试模块的设置项中勾选“Deploy Multi Hap Packages”。例如entry模块调用feature模块,在调试entry模块时,需要同时安装feature模块,应该在entry模块的调试设置项中勾选“Deploy Multi Hap Packages”后再启动调试。
启动调试
-
在工具栏中,选择调试的设备,并单击Debug 或Attach Debugger to Process启动调试。
接下来就可以调试 了。完美。
- 点赞
- 收藏
- 关注作者
评论(0)