如何通过 Android Management API 在 KIOSK 模式下允许 systemui 活动?

Posted

技术标签:

【中文标题】如何通过 Android Management API 在 KIOSK 模式下允许 systemui 活动?【英文标题】:How to allow systemui activity in KIOSK Mode via Android Management API? 【发布时间】:2021-06-02 09:22:39 【问题描述】:

我正在使用 android Management API 在 Kiosk 模式下运行我的 APP。它依赖于 USB 设备才能正常工作,但接受连接的提示会引发 LOCK TASK MODE VIOLATION 错误。 此时我的应用卡住了(可能是因为无法显示授权提示),只能通过重启来重置。

正如this post 中所述,您可以将 com.android.systemui 列入白名单,但如何将其应用于 Android 管理 API?

【问题讨论】:

你好,能不能加个代码sn-p,让你更快得到帮助 没有实际的代码sn-p,因为错误不是自定义代码引起的。这似乎是 Android 在锁定任务模式下的默认行为,它本身是由 Android 管理 API 策略配置的。指定我的问题:有没有办法访问 Android-Management API 使用的 DevicePolicyManager,将 com.android.systemui 列入白名单? 呃抱歉,我真的不知道,但希望你尽快得到你想要的 【参考方案1】:

好吧,我想通了。我重读了管理 api 文档的this section。似乎这是将锁定任务模式的应用程序“列入白名单”的方式,尽管它有点误导。

因此,您只需将软件包作为“FORCE_INSTALLED”添加到您的策略中,即使已经从您的系统中安装了软件包。所以就我而言:


...
"applications": [
 
   "packageName": "com.example.app",
   "installType": "KIOSK",
   "defaultPermissionPolicy": "GRANT"
 ,
 
   "packageName": "com.android.systemui",
   "installType": "FORCE_INSTALLED",
   "defaultPermissionPolicy": "GRANT"
 
]

【讨论】:

以上是关于如何通过 Android Management API 在 KIOSK 模式下允许 systemui 活动?的主要内容,如果未能解决你的问题,请参考以下文章

Android Management API - Kiosk 模式下的单个应用程序 - 如何隐藏状态和导航栏?

我们能否向注册了 Android Management API 解决方案的手机发送通知(谷歌)

系统服务Windows Management Instrumentation如何修复

如何查看 cloudera management daemon 版本

JVM Management API

Android Management API - 设置问题