1

我正在尝试配置 Android 单机版应用程序。我正在使用搭载 Android 6.0 的华为 P8 Lite 和搭载 Android 6.0 的三星 Galaxy A3 2017。我已将应用程序设置为设备所有者,一切正常。我已经通过 adb 停用了 Toast 消息,并将主页按钮设置为应用程序。所以一切正常。当我启动应用程序时,即使重新启动,您也无法离开它。但是现在还剩下2个问题。在三星上,使用 adb 代码停用 Toast 消息效果很好

adb shell appops 设置 android TOAST_WINDOW 拒绝

但在华为它不起作用。它没有显示错误。

我在三星遇到的第二个问题。当我重新启动华为并按下“主页”按钮时,我无需在锁屏上滑动即可直接进入应用程序。当我在三星打开应用程序时,它是一样的,但重启后我总是在进入应用程序之前进入锁屏。这是一个小问题,因为可以通过向下滑动打开下拉菜单。那里的按钮不起作用,但我想在按下 Home 或 Power 按钮时直接进入应用程序。

所以我的问题是: - 如何停用华为上的 toast 消息?- 如何停用三星的整个锁屏?

有人有想法吗?

谢谢

4

1 回答 1

1

要绕过三星的锁屏,您可以尝试通过在设备启动后立即启动活动来唤醒设备,并带有以下标志

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);

复制自如何从睡眠中唤醒安卓手机?. 只需确保您已选择“无”作为屏幕锁定类型或调用setKeyguardDisabled,这具有相同的效果。

要停用 toast,您需要 root 权限,因此您的设备需要 root 并且您需要这样做

adb root & adb shell appops set android TOAST_WINDOW deny
于 2017-08-16T09:06:32.047 回答