6

我正在不同设备上测试我的游戏,当用户更改音量(上/下)或按下菜单按钮或类似按钮时,其中一个(Asus Garmin A10)随机崩溃(3/5 次)。这可能是原生崩溃,因为我没有收到 ACRA logcat(手机离我很远,我只是 ACRA 进行远程调试)。用户告诉我会发生什么。在我的 HTC 上,我只有一个烦人的警告,但游戏运行良好,没有任何反应。这是警告:

10-31 19:52:29.547: W/InputMethodManager(8441): IME 死了: com.android.inputmethod.latin/.LatinIME drop: KeyEvent{action=0 code=25 repeat=0 meta=0 scancode=114 mFlags= 8} 10-31 19:52:29.547: W/InputMethodManager(8441): android.os.DeadObjectException 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.os.BinderProxy.transact(Native Method ) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 com.android.internal.view.IInputMethodSession$Stub$Proxy.dispatchKeyEvent(IInputMethodSession.java:277) 10-31 19:52:29.547: W /InputMethodManager(8441): 在 android.view.inputmethod.InputMethodManager.dispatchKeyEvent(InputMethodManager.java:1344) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.view.ViewRoot.deliverKeyEvent(ViewRoot. java:2426) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.view。ViewRoot.handleMessage(ViewRoot.java:1741) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.os.Handler.dispatchMessage(Handler.java:99) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.os.Looper.loop(Looper.java:123) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 android.app.ActivityThread.main(ActivityThread.java :4627) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 java.lang.reflect.Method.invokeNative(Native Method) 10-31 19:52:29.547: W/InputMethodManager(8441): 在java.lang.reflect.Method.invoke(Method.java:521) 10-31 19:52:29.547: W/InputMethodManager(8441): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java :868) 10-31 19:52:29.547: W/InputMethodManager(8441): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 10-31 19:52:29.547:W/InputMethodManager(8441): 在 dalvik.system.NativeStart.main(Native Method) 10-31 19:52:29.707: W/InputMethodManager(8441): IME 死了: com.android.inputmethod.latin/.LatinIME 丢弃: KeyEvent{action=1 code=25 repeat=0 meta=0 scancode=114 mFlags=8} 10-31 19:52:29.707: W/InputMethodManager(8441): android.os.DeadObjectException 10-31 19:52:29.707 : W/InputMethodManager(8441): 在 android.os.BinderProxy.transact(Native Method) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 com.android.internal.view.IInputMethodSession$Stub$Proxy .dispatchKeyEvent(IInputMethodSession.java:277) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 android.view.inputmethod.InputMethodManager.dispatchKeyEvent(InputMethodManager.java:1344) 10-31 19:52:29.707 : W/InputMethodManager(8441): 在 android.view.ViewRoot.deliverKeyEvent(ViewRoot.java:2426) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 android.view.ViewRoot.handleMessage(ViewRoot.java:1741) 10-31 19:52:29.707: W/InputMethodManager(8441): 在android.os.Handler.dispatchMessage(Handler.java:99) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 android.os.Looper.loop(Looper.java:123) 10-31 19: 52:29.707: W/InputMethodManager(8441): 在 android.app.ActivityThread.main(ActivityThread.java:4627) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 java.lang.reflect.Method .invokeNative(Native Method) 10-31 19:52:29.707: W/InputMethodManager(8441): at java.lang.reflect.Method.invoke(Method.java:521) 10-31 19:52:29.707: W/ InputMethodManager(8441): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 10-31 19:52:29.707: W/InputMethodManager(8441): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 10-31 19:52:29.707: W/InputMethodManager(8441): at dalvik.system.NativeStart.main(Native Method)

例如,每次我使用音量按钮时都会出现这种警告。我正在使用 AndEngine 作为游戏的 2D 引擎。我想那里出了点问题,但我无法应付。我该如何处理这个问题?有什么建议吗?

4

1 回答 1

1

当在 IME 被杀死之前 UI 没有机会处理所有关键事件时,似乎引发了异常。不知道为什么它会在一台设备上崩溃而不是在另一台设备上崩溃。

于 2012-08-03T20:23:25.090 回答