我有一个应用程序,当它启动时,我必须禁用 Android 设备上的所有按钮,我成功禁用了结束通话和其他按钮。我需要禁用主页按钮单击。它不应该在点击时产生任何 Action 。
任何建议都非常感谢
最佳答案
我很确定 Toddler Lock 只是使用 BroadcastReciever 并监听 Intent.ACTION_MAIN
和类别 Intent.CATEGORY_HOME
- 这就是为什么当你第一次启动它时,它告诉您选中“将此应用程序用作默认设置”框,并让您选择幼儿锁。
所以,它并没有真正阻止 Home 按钮,它只是将自己设置为以下的默认广播接收器:
Intent i = new Intent(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_HOME);
当您启动 Toddler Lock 时,它可能会设置一个内部标志,如果您按下主页按钮,它只会将窗口带到前面。如果未设置该标志,它可能会显式启动 Launcher。
我希望这是有道理的。这只是一个理论,但我几乎 100% 确定它是如何做到的。
关于Android - 是否可以禁用单击主页按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2162182/