HarmonyOS 鸿蒙Nex DevEco Studio如何开启Hot Reload 热重载

发布于 1周前 作者 bupafengyu 最后一次编辑是 5天前 来自 鸿蒙OS

DevEco Studio提供Hot Reload(热重载)能力,支持开发者在真机上运行/调试运行应用时,修改代码并保存后无需重启应用,在真机上即可使用最新的代码,帮助开发者更快速地进行调试。

HarmonyOS 鸿蒙Nex DevEco Studio如何开启Hot Reload 热重载的步骤

1、通过USB连接真机设备。

2、运行/调试应用,将代码编译打包运行/调试到真机上,请参考使用本地真机运行应用/服务或使用真机进行调试。

3、修改代码后,可以通过如下操作,查看真机上修改后的显示效果。

点击Hot Reload按钮:

image.png

4、通过快捷键方式触发Hot Reload:需要先在菜单栏点击File > Settings,选择Tools > Actions on Save,勾选Perform hot reload,点击OK完成设置。修改代码后通过快捷键Ctrl + S即可触发Hot Reload。

image.png

4、点击停止按钮终止运行/调试运行,退出Hot Reload模式。

DevEco Studio如何开启Hot Reload 热重载 使用约束

1、只支持真机调试。

2、只允许修改一个文件,超出一个文件无法触发Hot Reload。

3、同一时间只支持一个工程进行热重载。

4、支持修改UI代码,包括增删改、新增代码可以调用本代码文件或其他代码文件的类和方法,但是不支持new任何对象。

5、支持调整组件响应事件的函数,修改函数实现,新增代码可以调用本代码文件或其它代码文件的类和方法,但是不支持new任何对象。

DevEco Studio如何开启Hot Reload 热重载 不支持以下场景:

不支持增加和删除代码文件。

不支持新增和删除类;不支持新增、删除和修改已有类的成员方法和成员变量;不支持调整装饰器;不支持调整import代码。

在一个页面中不支持两个及以上的struct组件或class类的修改、引用热重载,可以通过新建页面使用export、import导入导出实现struct组件或class类的引用。

不支持资源修改热重载;不支持变量的热重载;不支持so的热重载。

调试在命中断点时不支持热重载。

DevEco Studio如何开启Hot Reload 热重载更多详细内容,请见官方文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/hot_reload-0000001527628941-V2

1 回复

使用DevEco Studio的Hot Reload功能时,请注意以下几点以确保高效与安全:

  1. 稳定性:热重载虽然便捷,但频繁使用可能影响应用稳定性,特别是在复杂的UI更新或状态管理时。
  2. 性能影响:对于性能敏感的应用部分,应谨慎使用,因其可能在运行时增加额外开销。
  3. 代码变更限制:并非所有代码更改都支持热重载,如资源文件或结构性大的调整需重新编译。
  4. 状态管理:确保热重载后的状态管理正确,避免数据不一致问题。
回到顶部