Skip to content

ArgoUI断点调试教程

xuwhale6 edited this page Aug 24, 2020 · 4 revisions

一、 启用断点调试步骤:(pod版本、插件包稍后更新)

1. 客户端代码更新 (若已更新,忽略该步骤)

  • iOS:将工程中的调试库更新到0.2.7版本(pod 'MLNDevTool', '0.2.7'),或者点击这里直接下载demo工程来使用断点功能
    在执行pod install时,若报如下错误信息,则先执行pod repo update再执行pod install即可。
    image.png
  • Android:根据Android sdk接入新建Android工程,或是或者点击这里直接下载demo工程来使用断点功能。

2. LuaNative插件更新 (若已更新,忽略该步骤)

更新包含断点调试功能的新版LuaNative插件,具体请参考插件安装步骤

3. 首先在 IntelliJ IDEA 中配置 Lua Remote Configuration。(若已配置,可忽略该步骤)

image.pngimage.png

4. 在 IntelliJ IDEA 上开启调试服务

image.png

注意: 如果发现Lua Remote Configurations 上有个❌,需要打开 IntelliJ IDEA -> File -> ProjectStructure -> Modules -> Sources,然后右键src目录,选择Sources,然后点击OK即可。如下图: image.png

二、 断点使用:

  • 真机断点

1. 真机进入HotReload页面,设置IP地址和端口号。

需要填写电脑的IP地址,也可通过扫描 IntelliJ IDEA 上的二维码来获取;端口号即上述2步骤中的端口号,默认8172。

iOS端设置IP和端口:

image.png
Android端设置IP和端口:

image.png

注意事项:

  1. ip和端口设置之后,会存储在本地,下次无需设置。若ip或者端口发生变化,请重新设置;
  2. 两端通过扫码获取debug ip的位置不太一致,详细操作见上图;

2. 点击刷新,运行项目即可。

项目 run 起来 可以在后续代码中添加断点并调试。如下图:

  • 模拟器断点

1. 点击ArgoUI面板中 “启动Debug”,会新开启一个debug模拟器窗口,来进行后续的断点调试即可。


三、基本用法:

  1. 支持查看当前函数栈帧中的局部变量 (不同 IntelliJ IDEA 版本可能显示位置不同)
  1. 查看全局表_G中的内容。
  1. /var/folders/XX/T/mlnui/当前debug工程名目录下,找到json文件,查看可打断点的行情况。

四、原生加载lua的方式,使用debug功能

  • 1、原生加载lua
  • 2、开启debug,然后真机进入到lua页面,即可开始断点调试。

⚠️注意

  1. 断点模式下暂不支持赋值操作。
  2. 断点调试功能和测试覆盖率功能不可以同时使用,否则断点调试不会生效。
  3. 出现无法断点调试时,请注意ip配置是否正确。
  4. 遇到某些位置无法打断点的情况,在/var/folders/XX/T/mlnui/当前debug工程名目录下,找到json文件,查看该行是否可打断点。
Clone this wiki locally