辅助功能服务-禁用主页按钮操作android

时间:2018-07-09 09:31:23

标签: android android-homebutton accessibilityservice

我想使用辅助功能禁用主页按钮操作。我已经从https://developer.android.com/training/accessibility/service

阅读了文档

但是不知道该怎么做?有人可以帮我吗

3 个答案:

答案 0 :(得分:2)

使用任何教程创建您自己的辅助功能并将其放在其中。...

public class button_lock extends AccessibilityService {
@Override
public void onAccessibilityEvent(AccessibilityEvent accessibilityEvent) {

}

@Override
public void onInterrupt() {

}
@Override
protected boolean onKeyEvent(KeyEvent event) {
    if(event.getKeyCode()==KeyEvent.KEYCODE_HOME)
        return true;
    else
       return super.onKeyEvent(event);
}}

然后享受。...

答案 1 :(得分:0)

您可以通过在活动中添加以下代码来禁用Home键:

@Override
public void onAttachedToWindow() {
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
    super.onAttachedToWindow();
}

但是,这在显示对话框时不起作用。要解决此问题,只需将我的代码添加到Dialog对象中即可:

Disable home Key while Dialog showing

答案 2 :(得分:-1)

  

在“活动”中覆盖以下方法,

@Override
public void onAttachedToWindow() {
    super.onAttachedToWindow();
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);           
}
  

现在处理这样的关键事件,

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
   if(keyCode == KeyEvent.KEYCODE_HOME)
    {
     Log.i("Home Button","Clicked");
    }
   if(keyCode==KeyEvent.KEYCODE_BACK)
   {
        finish();
   }
 return false;
}