Android 8.1(API 27)-重新启动后,键盘未显示在Kiosk-mode应用程序中



我制作了一个Kiosk模式的应用程序,安装后运行良好(基于Activity.startLockTask(((。

重新启动设备(运行Android 8.1的Nexus 5X(后,我无法使用该应用程序,因为键盘无法显示在屏幕上。

我发出命令,在应用程序处于活动状态时重新启动(全屏并设置为设备启动器(,以测试重新启动后是否仍处于Kiosk模式。结果是它仍然处于Kiosk模式,但用户无法激活软键盘。

你知道它为什么会这样吗?

该应用程序在Android 8.1模拟器上运行良好,在Android 5.1和Android 6.0 上也运行良好

任何帮助都将不胜感激!

我已经解决了这个问题,将这行代码添加到onCreate((方法中(在调用super.onCreate((之后(:

getWindow((.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD|WindowManager.LlayoutParams.FLAG_SHOW_WHEN_LOCKED(;

在创建对话框窗口时(在调用dialog.show((之前(应添加相同的内容。

当您试图在keyguard处于活动状态时激活kiosk时,就会发生这种情况。在激活kiosk之前,您需要检查KeyguardManager.isKeyguardLocked((.

上有一节关于这个问题(有点间接(https://developer.android.com/work/dpc/dedicated-devices/lock-task-mode#start_lock_task_mode

当设备被锁定时,不要启动锁定任务模式,因为用户可能无法解锁设备

相关内容

  • 没有找到相关文章

最新更新