如何在Android TV应用上禁用播放ControlGlue?

时间:2019-07-18 10:31:13

标签: android kotlin android-tv

我想制作一个行为类似于传统电视的Android TV应用程序,当按下遥控器上的向上和向下按钮时,将切换电视频道。我已经映射了onKeyDown侦听器。但是,每按一次按钮,就会显示“播放控制胶”。我需要再次按下按钮以触发收听,以切换频道。

播放控制胶: https://developer.android.com/training/tv/playback/transport-controls

有什么方法可以禁用 “控制胶”是否显示出来?由于我的应用播放了实时流,所以我不希望用户暂停视频,并且无法查找。

而且,在不经过“控制胶水”的情况下,监听者如何立即获得按键事件?

谢谢。

P.S。我不熟悉Android开发。我正在修改Kotlin中的电视示例代码。

1 个答案:

答案 0 :(得分:0)

如果您想处理活动中的关键事件,而不是通过控制粘连,可以覆盖活动中的dispatchKeyEvent

赞:

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    if (event.getKeyCode() == KeyEvent.KEYCODE_DPAD_UP 
            || event.geyKeyCode() == KeyEvent.KEYCODE_DPAD_DOWN) {
        //switch channel
        return true;
    }
    return super.dispatchKeyEvent(event);
}