捕获Android TV遥控器按键代码

时间:2019-02-21 16:46:54

标签: keyevent android-tv

我的android应用具有检测电视遥控器所有键代码的功能。

我尝试了 onKeyDown(up) API,以检测用户何时按下电视遥控器并覆盖 dispatchKeyEvent 方法。除某些键外,该键有效:静音,音量,主页,返回。如何检测这些键?

谢谢

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

系统具有控制这些键的特权,因此我必须找到一些要使用的源代码。

我最终解决了这个问题。通常,AOSP会部署一个led服务(led控制器):

  public LedService() {
    }

    public IBinder onBind(Intent intent) {
        this.handlePowerStateChanged(0);
        return new LedService.LedServiceWrapper();
    }

    public void handlePowerStateChanged(int state) {
        if (DEBUG) {
            Log.d(TAG, "handlePowerStateChanged: " + state);
        }

    }

    public void handleKeyEvent(KeyEvent event) {
        if (DEBUG) {
            Log.d(TAG, "handleKeyEvent: " + event);
        }

    }

此类使用HAL降级并直接与系统通信。我在自己的类中扩展该类,并使用handleKeyEvent方法。

干杯