12-18 08:29:25.773: E/AndroidRuntime(585): FATAL EXCEPTION: main
12-18 08:29:25.773: E/AndroidRuntime(585): android.os.ParcelFormatException: Not enough data
12-18 08:29:25.773: E/AndroidRuntime(585):  at android.os.BinderProxy.transact(Native Method)
12-18 08:29:25.773: E/AndroidRuntime(585):  at com.android.internal.view.IInputMethodSession$Stub$Proxy.dispatchKeyEvent(IInputMethodSession.java:283)
12-18 08:29:25.773: E/AndroidRuntime(585):  at android.view.inputmethod.InputMethodManager.dispatchKeyEvent(InputMethodManager.java:1344)
12-18 08:29:25.773: E/AndroidRuntime(585):  at android.view.ViewRoot.deliverKeyEvent(ViewRoot.java:2579)
12-18 08:29:25.773: E/AndroidRuntime(585):  at android.view.ViewRoot.handleMessage(ViewRoot.java:1910)
12-18 08:29:25.773: E/AndroidRuntime(585):  at android.os.Handler.dispatchMessage(Handler.java:99)
12-18 08:29:25.773: E/AndroidRuntime(585):  at android.os.Looper.loop(Looper.java:130)
12-18 08:29:25.773: E/AndroidRuntime(585):  at android.app.ActivityThread.main(ActivityThread.java:3835)
12-18 08:29:25.773: E/AndroidRuntime(585):  at java.lang.reflect.Method.invokeNative(Native Method)
12-18 08:29:25.773: E/AndroidRuntime(585):  at java.lang.reflect.Method.invoke(Method.java:507)
12-18 08:29:25.773: E/AndroidRuntime(585):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
12-18 08:29:25.773: E/AndroidRuntime(585):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
12-18 08:29:25.773: E/AndroidRuntime(585):  at dalvik.system.NativeStart.main(Native Method)

解决方案 »

  1.   

    补充:适配点吗如下:
    @Override
    public boolean dispatchKeyEvent(KeyEvent event) {
    int keyCode = event.getKeyCode();
    if (keyCode == KeyEvent.KEYCODE_BACK) {
    int keyAction = event.getAction();
    if(keyAction == KeyEvent.ACTION_DOWN){
    BaseActivity baseActivity = (BaseActivity) mManager.getCurrentActivity();
    if (baseActivity.onBackKeyDown()) {
    return false;
    }
    }
    }else if(keyCode == KeyEvent.KEYCODE_VOLUME_DOWN){
    int keyAction = event.getAction();
    if(keyAction == KeyEvent.ACTION_DOWN){
    int repeatCount = event.getRepeatCount();
    if(repeatCount==0){
    PttApplication.getConnection().tryGroupSpeak();
    }
    }else if(keyAction == KeyEvent.ACTION_UP){
    int repeatCount = event.getRepeatCount();
    if(repeatCount==0){
    PttApplication.getConnection().stopGroupSpeak();
    }
    }
    return true;
    }
    return super.dispatchKeyEvent(event);
    };