Android 没有锁屏的 Kiosk 模式
Android Kiosk Mode without lockscreen
我正在尝试配置 Android 单机版应用程序。我使用 Android 6.0 的华为 P8 Lite 和 Android 6.0 的三星 Galaxy A3 2017。我将应用程序设置为设备所有者,一切正常。我通过 adb 停用了 Toast 消息并将主页按钮设置为应用程序。所以一切正常。当我启动应用程序时,您不能再离开它,即使重新启动也是如此。但是现在还剩下2个问题。在三星上,使用 adb 代码
停用 Toast 消息效果很好
adb shell appops 设置 android TOAST_WINDOW 拒绝
但是在华为上不行。它没有显示错误。
三星的第二个问题。当我重新启动华为并按下 "Home" 按钮时,我直接进入了应用程序,而无需在锁定屏幕上滑动。当我在三星上打开应用程序时,它是一样的,但在重新启动后,我总是在进入应用程序之前进入锁屏。这是一个小问题,因为向下滑动可以打开下拉菜单。那里的按钮不起作用,但我想在按下主页或电源按钮时直接进入应用程序。
所以我的问题是:
- 如何停用华为的吐司消息?
- 如何停用三星的整个锁屏?
有人知道吗?
谢谢
要绕过三星的锁屏,您可以尝试通过在设备启动后立即启动 activity 来唤醒设备,使用以下标志
this.getWindow().setFlags(
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
复制自how to wakeup android phone from sleep?. Just make sure that you have chosen "None" as a screen lock type or called setKeyguardDisabled,效果相同
要停用 toast,您需要 root 权限,因此您的设备需要获得 root 权限,您需要执行以下操作
adb root & adb shell appops set android TOAST_WINDOW deny
我正在尝试配置 Android 单机版应用程序。我使用 Android 6.0 的华为 P8 Lite 和 Android 6.0 的三星 Galaxy A3 2017。我将应用程序设置为设备所有者,一切正常。我通过 adb 停用了 Toast 消息并将主页按钮设置为应用程序。所以一切正常。当我启动应用程序时,您不能再离开它,即使重新启动也是如此。但是现在还剩下2个问题。在三星上,使用 adb 代码
停用 Toast 消息效果很好adb shell appops 设置 android TOAST_WINDOW 拒绝
但是在华为上不行。它没有显示错误。
三星的第二个问题。当我重新启动华为并按下 "Home" 按钮时,我直接进入了应用程序,而无需在锁定屏幕上滑动。当我在三星上打开应用程序时,它是一样的,但在重新启动后,我总是在进入应用程序之前进入锁屏。这是一个小问题,因为向下滑动可以打开下拉菜单。那里的按钮不起作用,但我想在按下主页或电源按钮时直接进入应用程序。
所以我的问题是: - 如何停用华为的吐司消息? - 如何停用三星的整个锁屏?
有人知道吗?
谢谢
要绕过三星的锁屏,您可以尝试通过在设备启动后立即启动 activity 来唤醒设备,使用以下标志
this.getWindow().setFlags(
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
复制自how to wakeup android phone from sleep?. Just make sure that you have chosen "None" as a screen lock type or called setKeyguardDisabled,效果相同
要停用 toast,您需要 root 权限,因此您的设备需要获得 root 权限,您需要执行以下操作
adb root & adb shell appops set android TOAST_WINDOW deny