Android TV模拟器无法识别媒体按键事件

时间:2019-03-15 22:06:24

标签: java android android-tv

我的活动中包含此事件处理程序:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {

    switch (keyCode) {
        case KeyEvent.KEYCODE_MEDIA_FAST_FORWARD:
            //do something
            return true;
        case KeyEvent.KEYCODE_MEDIA_REWIND:
            //do something
            return true;

        default:
            return super.onKeyUp(keyCode, event);
    }
}

在Android TV设备模拟器中进行调试时,当我在方向键扩展控制中按下按钮时,可以看到KEYCODE_DPAD_LEFT和KEYCODE_MEDIA_PLAY_PAUSE。

但是,当我按下“快进”或“后退”媒体键时,会触发键向上事件,但是键码是“无法识别”。

  

KeyEvent {action = ACTION_UP,keyCode = KEYCODE_UNKNOWN,scanCode = 208 ...

这是Google的错误,还是我在这里做错了什么?

Directional pad extended control in Android TV emulator

1 个答案:

答案 0 :(得分:2)

似乎电视仿真器实际上没有在此处提供正确的键码,这似乎是一个错误。

您可以通过命令行对此进行仿真:

adb shell input dpad keyevent 90

这将触发KEYCODE_MEDIA_FAST_FORWARD按钮。