简体   繁体   English

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

[英]Android TV emulator not recognizing media key events

I have this event handler in my activity:我的活动中有这个事件处理程序:

@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);
    }
}

While debugging in Android TV device emulator, I can see KEYCODE_DPAD_LEFT and KEYCODE_MEDIA_PLAY_PAUSE when I press a button in directional pad extended control.在 Android TV 设备模拟器中调试时,当我按下方向键扩展控件中的按钮时,我可以看到 KEYCODE_DPAD_LEFT 和 KEYCODE_MEDIA_PLAY_PAUSE。

But when I press "fast forward" or "rewind" media keys, the key up event is triggered, but the key code is "unrecognized".但是当我按下“快进”或“倒带”媒体键时,会触发向上键事件,但键码是“无法识别的”。

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

Is this a Google bug or am I doing something wrong here?这是谷歌错误还是我在这里做错了什么?

Android TV 模拟器中的定向键盘扩展控制

It seems that the TV Emulator actually does not provide the correct keycode here, which seems to be a bug.似乎电视模拟器实际上没有在这里提供正确的键码,这似乎是一个错误。

You can simulate this via the command line:您可以通过命令行模拟:

adb shell input dpad keyevent 90

This will trigger the KEYCODE_MEDIA_FAST_FORWARD button.这将触发KEYCODE_MEDIA_FAST_FORWARD按钮。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM