在Blackberry设备上调试最有效的方法?

时间:2012-03-27 13:21:15

标签: debugging blackberry java-me

我正在寻找最快,最有效的方法来调试我的BlackBerry应用程序。

我注意到,只需将调试器连接到设备,在我的情况下使用Torch 9800。每次我对代码进行更改时,是否必须附加它,还是有更好的方法?

我还注意到在控制台中,设备似乎正在打印很多我并不关心的东西。筛选这一切真的很痛苦。有没有办法只在控制台中查看与我的应用程序相关的内容,特别是我自己打印的内容?

2 个答案:

答案 0 :(得分:8)

  1. 在大多数情况下,Eclipse调试器和分析器是最好的解决方案,但在某些情况下,它无法找出问题来源是什么。

  2. 通过EventLogger类写入内部设备日志。作为选项,如果有大量数据 - 外部文本文件,位于设备媒体卡(不是内部设备文件系统)上。

  3. 使用控制台输出窗口。不幸的是,没有办法在控制台输出上应用过滤器,但是有一种方法可以更轻松地使用控制台。在调试消息开始时添加符号序列,以区分调试打印输出和系统调试打印输出。例如

    System.out.println(“!!!!!!!!!!!!!!!!!!!!!!! myVar value =”+ myVar);

  4. 或那样:

    System.out.println("#############################################");
    System.out.println("############# object1: " + object1);
    System.out.println("############# object2: " + object2);
    System.out.println("############# object3: " + object3);
    System.out.println("#############################################");
    

    当控制台中有大量调试数据时,只需将所有控制台文本复制到文本编辑器,如Notepad++,然后在那里使用它。

答案 1 :(得分:5)

是的,大多数现代模拟器上的调试器需要永久地附加。模拟器越新,花费的时间就越多。我通常做的是:

  • 尝试在较旧的模拟器中进行繁重的调试(通常是83xx)。
  • 如果不可能,请启动模拟器,不要关闭它。此hot swap功能仅适用于eclipse BlackBerry插件中的5.0以上版本。
  • 由于热插拔,您可以启动模拟器(使用运行配置),然后按下调试按钮。它比从一开始就启动调试要快得多。
  • 使用旧版本的eclipse插件时,热插拔不可用,或者编写OS< 5.0,使用run从eclipse启动模拟器,然后打开RIM JDE(是的,那个老式的RIM制作的Java IDE)并从那里附加调试器(Debug菜单 - > Attach to - >模拟器)。您无法在断点处停止,但可以看到文本输出。 JDE没有附带eclipse插件,你应该download并独立安装它。