如何在无障碍服务中检测后退/上门按压?

问题描述

标题几乎可以总结出来。

我想使用辅助功能来检测按下后退/主页按钮。

按下这些按钮时似乎未触发onKeyEvent。

解决方法

如果您创建自己的可访问性服务,则可以检测到关键事件。之后,您需要为 onKeyEvent()实施行为。

这里是一个例子:

public class AccessibilityKeyDetector extends AccessibilityService  {

...

  @Override
    protected boolean onKeyEvent(KeyEvent event) {
        if (event.getKeyCode() == KeyEvent.KEYCODE_BACK || event.getKeyCode() == KeyEvent.KEYCODE_HOME) {
 // Do your magic
    }

..
}

我假设您已经检查了访问权限并设置了服务的正确配置。

我希望这段代码适合您。如果您还有其他疑问,请与我联系。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...