我的android应用具有检测电视遥控器所有键代码的功能。
我尝试了 onKeyDown(up) API,以检测用户何时按下电视遥控器并覆盖 dispatchKeyEvent 方法。除某些键外,该键有效:静音,音量,主页,返回。如何检测这些键?
谢谢
答案 0 :(得分:0)
在以下SO引用的帮助下检查KeyEvent
常量。
答案 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方法。
干杯