【发布时间】:2011-02-17 15:16:53
【问题描述】:
如果我在进行 OTA 应用交付,是否有一种机制可以收集 BlackBerry 应用程序的所有堆栈跟踪?
我相信 Apple 会收集并提供给我们崩溃日志,或者您可以通过将 iPhone 连接到开发机器并使用 XCode 读取崩溃日志来提取它们。黑莓有没有等效机制?
如果没有,是否有任何库可以记录所有异常并将它们推送到服务器?
【问题讨论】:
标签: blackberry java-me crash-dumps
如果我在进行 OTA 应用交付,是否有一种机制可以收集 BlackBerry 应用程序的所有堆栈跟踪?
我相信 Apple 会收集并提供给我们崩溃日志,或者您可以通过将 iPhone 连接到开发机器并使用 XCode 读取崩溃日志来提取它们。黑莓有没有等效机制?
如果没有,是否有任何库可以记录所有异常并将它们推送到服务器?
【问题讨论】:
标签: blackberry java-me crash-dumps
自动收集是不可能的。无法在 String 中获取堆栈跟踪,这将是自动崩溃处理程序的第一步。
有一个 StackOverflow 问题只是关于将堆栈作为字符串获取:
Is there a way to get the stack trace of an exception in form of a String in Blackberry?
如果您正在开发并且可以将您的计算机连接到设备,您可以使用 javaloader.exe 获取事件日志或控制台输出。 JavaLoader 有一个很长的帮助页面,如果你不带参数运行它就会显示。您可以在 Eclipse 插件文件夹中找到 JavaLoader.exe,其中 BlackBerry JDE 已解压。
提到JavaLoader的StackOverflow问题:
Tool to get BlackBerry log
【讨论】:
如果您真的想向您的用户询问堆栈跟踪,它们会自动出现在事件日志中(至少,对于未捕获的异常)。他们可以从设备主屏幕(在带键盘的设备上)使用 ALT-LGLG 进入事件日志,然后他们可以从那里将当天的事件复制到剪贴板并粘贴到电子邮件中。
这种方法的最大缺点是事件日志通常比剪贴板所能容纳的大,因此您不会获得完整的事件日志。
【讨论】: