2013-06-23 2 views
0

У меня есть некоторые приложения, опубликованные на Google Play Market, и я продолжаю получать отчеты ANR (приложение, не отвечающее) для keyDispatchingTimedOut в моей главной учетной записи. Как вы знаете, Google предоставляет мне Thread Dumps. Я не знаю, как это анализировать, какую часть мне следует подойти поближе.Что посмотреть в ниспадающем потоке

Я тестировал приложение со всеми версиями Android с использованием виртуальных устройств в eclipse, все работало нормально.

Вот несколько строк из моих ниток, полный список действительно длинный.

DALVIK THREADS: 
(mutexes: tll=0 tsl=0 tscl=0 ghl=0 hwl=0 hwll=0) 
"main" prio=5 tid=1 NATIVE 
| group="main" sCount=1 dsCount=0 obj=0x4002a278 self=0xcf50 
| sysTid=142 nice=0 sched=0/0 cgrp=default handle=-1345006528 
at com.android.server.SystemServer.init1(Native Method) 
at com.android.server.SystemServer.main(SystemServer.java:701) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:507) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) 
at dalvik.system.NativeStart.main(Native Method) 

"loc_api" prio=5 tid=52 NATIVE 
| group="main" sCount=1 dsCount=0 obj=0x408df0a8 self=0x263238 
| sysTid=521 nice=0 sched=0/0 cgrp=default handle=2593632 
at dalvik.system.NativeStart.run(Native Method) 

"Binder Thread #9" prio=5 tid=44 NATIVE 
| group="main" sCount=1 dsCount=0 obj=0x406f41d8 self=0x26a7a0 
| sysTid=435 nice=0 sched=0/0 cgrp=default handle=2714632 
at dalvik.system.NativeStart.run(Native Method) 

"DHCP Handler Thread" prio=5 tid=54 NATIVE 
| group="main" sCount=1 dsCount=0 obj=0x4077a508 self=0x25f700 
| sysTid=356 nice=0 sched=0/0 cgrp=default handle=2500272 
at android.os.MessageQueue.nativePollOnce(Native Method) 
at android.os.MessageQueue.next(MessageQueue.java:119) 
at android.os.Looper.loop(Looper.java:117) 
at android.os.HandlerThread.run(HandlerThread.java:60) 

Любая помощь приветствуется.

ответ

0

В настоящее время у меня такая же проблема. ANRs в Google Play Console неудачно отрезали интересные детали. Но я был в состоянии своего рода воспроизвести один раз и adb logcat дал мне следующий вывод:

W/ActivityManager( 340): Launch timeout has expired, giving up wake lock! 
W/ActivityManager( 340): Activity idle timeout for HistoryRecord{40bb6948 

, которые приводят к падающей StackOverflow записи:

Activity Idle Timeout for ActivityRecord

Пост предполагает проверку на GlobalChangeListener вызывает зацикливание недействительности макета активности, что было по крайней мере для нашего приложения. Эта ошибка не всегда заканчивается в НРУ, хотя:

https://groups.google.com/forum/?fromgroups=#!topic/android-developers/TfkPlN5b-ig

Может быть, это помогает!

Смежные вопросы