所以,在我的所有计算完成后,我的应用程序的AsyncTask和UI的更改直到onPostExicute方法我意识到我的应用程序甚至只是初始化我的类的所有变量来创建我的AsyncTask来获取ANR。这是我正在谈论的代码:
http://pastebin.com/BB8M9afE (笔记中的内容是我正在玩的代码片段)
如果您需要更多代码,我可以发布。如何让我的线程类不会导致ANR?
代码备注: ColorFloodGame(6,6)用math.random()值填充int数组。 GuiThreader创建一个ColorFloodGame(6,6)并使其成为“Play”中的一个别名,并创建一个同样的GUI驱动程序
答案 0 :(得分:4)
使用“adb shell cat /data/anr/traces.txt”查看最后一个ANR的堆栈爬网。列表中的第一个堆栈是针对应用程序的主线程的,因此它显示了ANR发生时它正在执行的操作。看看确定你正在做什么需要这么长时间。