是否可以禁用所有物理电话按钮?

时间:2012-05-19 11:32:29

标签: java android

我正在开发安全应用程序,当手机丢失或被盗时,手机屏幕会自动锁定,如果盗窃试图通过随机输入密码登录手机,手机将记录到3次尝试失败。

尝试失败3次后,当前布局将变为黑色布局,布局内没有任何内容,我将为此布局设置计时器,在此布局期间,除非计时器过期,否则任何键都无法唤醒此布局。我已经成功实现了计时器,但是当我按下手机上的后退按钮时,布局又回到了登录布局。如何禁用所有电话按钮?可能吗?感谢

2 个答案:

答案 0 :(得分:3)

不要这样做。

您尝试实施的“黑客”只需在重启设备进入安全模式后删除您的应用即可绕过。禁用硬按钮无法阻止此操作。

答案 1 :(得分:1)

您可以使用以下代码停用后退按钮

@Override
    public void onBackPressed() { //disable back button in this activity
        return;
    }
  

http://developer.android.com/reference/android/app/Activity.html#onBackPressed()

还可以使用

禁用主页按钮
@Override
    public void onAttachedToWindow() { //disable home button in this activity
        this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
        super.onAttachedToWindow();
    }
  

http://developer.android.com/reference/android/app/Activity.html#onAttachedToWindow()