2011-11-21 96 views
0

我正在调试Android应用程序,其中一项活动刚刚失败;它弹出了后面的堆栈,我得到了以前的活动。如何检测Android上无声故障的原因?

我已经看到了这个类型可以归结为记忆问题的无声故障,但在这种情况下,我不附加调试测试。该logcat的几乎没有显示出信息:从我们接触的听众一些输出后,我得到

I/DEBUG(85): debuggerd committing suicide to free the zombie! 
I/DEBUG(24919): debuggerd: Jul 8 2011 06:16:01 
I/ActivityManager(157): Process com.tse.newsreader (pid 24415) has died. 
I/WindowManager(157): WIN DEATH: Window{4108f938 com.tse.newsreader/com.tse.newsreader.activities.StorefrontFragmentActivity paused=false} 

com.tse.newsreader是我们的进程。

我想知道这是否是由内存泄漏引起的,我希望将HPROF转储添加到全局异常处理程序,有点像Is there a way to take a memory dump on app crash?中所述,但如果没有异常或OutOfMemoryError可以捕获,我看不出这会有什么帮助。

任何人都可以建议我怎么能在这些无声故障的原因得到什么?

+0

顺便说,行为视机失败是:触摸事件处理程序开始只在Y轴接收运动事件(该装置是横向),然后将窗口完全消失。我不知道这是否意义重大。但是,我们的代码同时处理x和y运动事件,所以我认为这可能是潜在原因的症状。 –

+0

值得注意的是用户可以强制清除内存。 –

+0

你是什么意思?不过,在这种情况下,我只是正常运行应用程序。 –

回答

1

我不知道,如果这是你的意思,但你可以考虑添加类似bugsense到您的应用程序。它会拾取未捕获的异常。

+0

这看起来像个不错的主意,谢谢。 –

+0

@AndrewWyld这对Andrew有帮助吗?由于我有同样的问题,显然,没有任何异常的活动只是消失。 – weston

+0

其实该项目被暂停,所以我还没有机会发现!对不起:( –