如何使用辅助功能服务长按电源按钮

时间:2017-01-12 14:19:42

标签: android

我想显示关闭/重启对话框,而不是实际长按电源按钮。我发现的每一个消息都表示除非电话根植,否则这是不可能的。但是,我在Google Play商店中找到了一个名为Tasker的应用程序,可以在不使用电源按钮或植根的情况下显示关闭/重启对话框。这意味着必须以某种方式。该应用程序正在使用辅助功能服务,但我无法弄清楚如何模拟长按电源按钮。也许这里有人可以帮助我或指出我正确的方向。

我已经设置了AccessibilityService,当我按下普通按钮时会接收事件:

@Override
public void onAccessibilityEvent(AccessibilityEvent accessibilityEvent) {
    switch (accessibilityEvent.getEventType()){
        case AccessibilityEvent.TYPE_VIEW_CLICKED:
            //What should be here ???
            break;
    }
}

这有效,但我不知道下一步该做什么。

1 个答案:

答案 0 :(得分:1)

如果要显示电源对话框,请使用应用中某些内容触发的全局操作。这可以通过Activity向您的辅助功能服务甚至是自定义活页夹界面发送Intent来完成。在服务电话中:

performGlobalAction(GLOBAL_ACTION_POWER_DIALOG);

但这需要API 21+。