我最近在我的一个应用程序中的Android市场中收到了NullPointerException崩溃报告。我在测试时无法重新创建该错误,因此我认为它可能特定于设备。为了解决此问题,我在最新版本中包含了BugSense。 BugSense已经报告了其他问题,并且非常有帮助,但是我仍然可以在Android Market中但在BugSense中获得有关最新版本的原始错误的报告。 BugSense在某些设备上不起作用吗?

有关崩溃的一些详细信息:


在我的启动画面活动中调用了BugSense。
初始屏幕打开主活动。
主活动具有MyObject的实例。
当用户单击ListView中的项目时,将设置MyObject。
单击ListView中的项目将打开一个AlertDialog。
MyObject.getName()在onCreateDialog中调用。
发生崩溃-NPE。


错误不会出现在BugSense仪表板上。 Android Market状态中的用户评论“应用程序在打开后立即崩溃”。我最初的想法是,用户找到了一种无需单击列表项即可打开对话框的方法,但是在看到用户注释后,该应用程序似乎在试图调用onCreateDialog之前需要调用它。

所以我的问题是:如果没有BugSense报告,应用程序如何崩溃?为什么在活动需要它之前会调用onCreateDialog?

最佳答案

我使用ACRA报告崩溃,并将它们上传到Google Docs(“常规” ACRA方式)和BugSense。

即使使用BugSense交换了多封电子邮件,并且他们尝试解决了这种情况,我在Google Docs中获得的条目数量也比在BugSense中获得的数量大约高出5倍。

BugSense悄无声息地删除了五分之四的报告,这很可能是因为其解析器不喜欢报告中包含的数据。它的用户界面比涉足庞大的Google Docs电子表格要有用得多,但是我不能相信BugSense,因为它漏报的太多了。

关于android - Android Market崩溃报告未报告错误错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9414295/

10-10 20:26