首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

keyDispatchingTimedOut异常怎么解决

2012-04-10 
keyDispatchingTimedOut错误如何解决?该程序跑到一定程度,停在某个地方,具体错误log如下:05-08 23:40:46.5

keyDispatchingTimedOut错误如何解决?
该程序跑到一定程度,停在某个地方,具体错误log如下:
05-08 23:40:46.582: WARN/WindowManager(330): Key dispatching timed out sending to com.android.HelloMiss/com.android.HelloMiss.Launcher
05-08 23:40:46.582: WARN/WindowManager(330): Previous dispatch state: {{KeyEvent{action=0 code=21 repeat=0 meta=0 scancode=0 mFlags=8} to Window{43df6ad8 com.android.HelloMiss/com.android.HelloMiss.Launcher paused=false} @ 1273362041576 lw=Window{43df6ad8 com.android.HelloMiss/com.android.HelloMiss.Launcher paused=false} lb=android.os.BinderProxy@43daf6b8 fin=false gfw=true ed=true tts=0 wf=false fp=false mcf=Window{43df6ad8 com.android.HelloMiss/com.android.HelloMiss.Launcher paused=false}}}
05-08 23:40:46.592: WARN/WindowManager(330): Current dispatch state: {{KeyEvent{action=1 code=21 repeat=0 meta=0 scancode=0 mFlags=8} to Window{43df6ad8 com.android.HelloMiss/com.android.HelloMiss.Launcher paused=false} @ 1273362046593 lw=Window{43df6ad8 com.android.HelloMiss/com.android.HelloMiss.Launcher paused=false} lb=android.os.BinderProxy@43daf6b8 fin=false gfw=true ed=true tts=0 wf=false fp=false mcf=Window{43df6ad8 com.android.HelloMiss/com.android.HelloMiss.Launcher paused=false}}}
05-08 23:40:47.412: ERROR/ActivityManager(330): 
ANR in com.android.HelloMiss(com.android.HelloMiss/com.android.HelloMiss.Launcher)
05-08 23:40:47.412: ERROR/ActivityManager(330): Reason: keyDispatchingTimedOut
05-08 23:40:47.412: ERROR/ActivityManager(330): Load: 10.48 / 10.4 / 8.46
05-08 23:40:47.412: ERROR/ActivityManager(330): CPU usage from 29539ms to 119ms ago:
05-08 23:40:47.412: ERROR/ActivityManager(330): ndroid.HelloMiss: 73% = 66% user + 6% kernel / faults: 3674 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): system_server: 12% = 7% user + 5% kernel / faults: 40 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): app_process: 5% = 4% user + 0% kernel / faults: 159 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): putmethod.latin: 2% = 1% user + 0% kernel / faults: 35 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): ami304d: 2% = 0% user + 1% kernel
05-08 23:40:47.412: ERROR/ActivityManager(330): m.android.music: 0% = 0% user + 0% kernel / faults: 54 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): d.process.acore: 0% = 0% user + 0% kernel / faults: 63 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): logcat: 0% = 0% user + 0% kernel
05-08 23:40:47.412: ERROR/ActivityManager(330): ndroid.calendar: 0% = 0% user + 0% kernel / faults: 11 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): m.android.phone: 0% = 0% user + 0% kernel / faults: 21 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): uance.xt9.input: 0% = 0% user + 0% kernel / faults: 15 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): ndroid.settings: 0% = 0% user + 0% kernel / faults: 22 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): rpcrotuer_smd_x: 0% = 0% user + 0% kernel
05-08 23:40:47.412: ERROR/ActivityManager(330): oid.voicedialer: 0% = 0% user + 0% kernel / faults: 20 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): d.process.media: 0% = 0% user + 0% kernel / faults: 15 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): ng123.TestPlurk: 0% = 0% user + 0% kernel / faults: 19 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): droid.bluetooth: 0% = 0% user + 0% kernel / faults: 14 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): jp.aplix.midp: 0% = 0% user + 0% kernel / faults: 17 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): m.android.email: 0% = 0% user + 0% kernel / faults: 23 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): o.android.oemvc: 0% = 0% user + 0% kernel / faults: 11 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): com.tsots.Stock: 0% = 0% user + 0% kernel / faults: 13 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): adbd: 0% = 0% user + 0% kernel
05-08 23:40:47.412: ERROR/ActivityManager(330): usb_mass_storag: 0% = 0% user + 0% kernel


05-08 23:40:47.412: ERROR/ActivityManager(330): id.oemvc:remote: 0% = 0% user + 0% kernel / faults: 20 minor
05-08 23:40:47.412: ERROR/ActivityManager(330): +flush-31:0: 0% = 0% user + 0% kernel
05-08 23:40:47.412: ERROR/ActivityManager(330): -flush-31:0: 0% = 0% user + 0% kernel
05-08 23:40:47.412: ERROR/ActivityManager(330): TOTAL: 99% = 82% user + 16% kernel
不知道那位朋友有遇到这种情况,帮忙解答一下.

[解决办法]
key没有释放?是不是onkeyevent里返回值有问题?
[解决办法]
我遇到了,还不会解 , 你怎么解决的?
[解决办法]
我的也是有个进程占用CPU奇高, 我看LOG, 是死在调用native方法里面。
我感觉很奇怪。
[解决办法]
keyDispatchingTimedOut 很有可能是msg在队列里面来不及处理,所以返回时 找不到之前的VIEW, 所以就一直等待,导致ANR。 这个是在一个论坛看到的解释。
但是还不知道为什么会导致CPU占用这么高。 
你是在跑monkey时候出现的这个问题么? 如果是,建议你延长event间隔时间,再试一下。


[解决办法]
这个问题,我只能提个建议

可能楼主把需要长时间加载的逻辑放在了 oncreate里面进行了操作。就会出现这个问题。。
记住一但oncreate里面的代码逻辑执行时间过长就会出现,尽量避免 这个情况。

一般需要长时间的东东,比如下载内容,逻辑不能放oncreate里面做,要保证oncreate里面的东西迅速加载完成,可以在oncreate启一个线程来(比如task)完成相应内容。

我们一个项目中就是这样,一直出现这个破错误,搞的很恼火,后来加了异步线程来处理,就好了。。。。

[解决办法]
guoyoulei520说的对,肯定是程序中有很耗时的数据处理。找出来然后放到子线程中去做
[解决办法]
在activity中系统有个5s超时,超过5秒还没有响应就会报程序结束。

热点排行