- 在 HarmonyOS 应用开发中,通常会涉及到使用 JS 和 Java 语言同时开发的场景,一般使用 JS 来开发应用的 UI,使用 Java 开发应用的逻辑,JS FA 调用 Java PA。针对这种场景, DevEco Studio 提供了 JS/Java 跨语言的调试功能,包括 JS 和 Java 断点的管理、调试信息的展示、单步调试等能力,方便开发者快速发现并解决 JS FA 调用 Java PA 相关代码的问题。
- 在使用 JS/Java 跨语言调试设置断点时需注意,JS FA 是调用者,Java PA 是被调用者,需要在 JS FA 调用 Java PA 的代码行或者在 Java PA 相关代码处(如 onRemoteRequest 函数)设置断点,才能正常进入 Java 断点。
- JS/Java 跨语言调试的操作方法如下:
-
- 在菜单栏点击 Run > Edit Configurations,选择 HarmonyOS APP 下的模块名(如 entry),然后在右侧窗口中选择“Debugger”:
-
- 检查和设置“Debug type”,请选择 Dual(Js+Java)或者 Detect Automatically 选项。
-
- 在 JS FA 调用 Java PA 处或者在 Java PA 的相关代码处设置断点。
-
- 点击启动按钮或者快捷键 Shift+F9,启动调试:
-
-
- 如果在 JS FA 调用 Java PA 代码行处设置断点:进入断点后,点击 Step Into,快捷键为 F7(Mac 为 F7),进入 Java PA 函数体,然后进行 Java PA 的调试。
-
-
-
- 如果在 Java PA 相关代码行处设置断点:进入断点后,点击 Resume Program,快捷键为 F9(Mac为Option+Command+R),开始 Java PA 的调试。
-