所以当我的一个课程运行时,我的应用程序立即给出了ANR。我一直在查看调试器并试图了解发生了什么。我是android的新手,没有经验丰富的调试。所以,如果有人能帮我理解发生的事情,那就太棒了。
我的onCreate(): http://pastebin.com/QzT5KA0L
我的GuiThreader(用于onCreate): http://pastebin.com/VCp7KegY
当应用程序失败时,我的“调试”选项卡上会显示以下内容:
ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord) line: 2268
ActivityThread.handleLaunchActivity(ActivityThread$ActivityRecord) line: 2284
ActivityThread.access$1800(ActivityThread, ActivityThread$ActivityRecord) line: 112
ActivityThread$H.handleMessage(Message) line: 1692
ActivityThread$H(Handler).dispatchMessage(Message) line: 99
Looper.loop() line: 123
ActivityThread.main(String[]) line: 3948
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]
Method.invoke(Object, Object...) line: 521
ZygoteInit$MethodAndArgsCaller.run() line: 782
ZygoteInit.main(String[]) line: 540
NativeStart.main(String[]) line: not available [native method]
答案 0 :(得分:0)
游戏循环应该在他自己的主题中。我没有这方面的经验,但是Android期望onCreate()
方法在短时间内结束,因为它在主/ UI线程上运行,它应该可以自由管理应用程序生命周期。