android - 在 Android Kiosk 模式下显示 USB/BLUETOH 权限对话框
问题描述
我有一个处于 Kiosk 模式(屏幕固定)的应用程序。该应用程序使用 USB 和蓝牙连接到外围设备。每次我连接 USB 时,我都需要授予权限,蓝牙设备需要 pin,但系统对话框被阻止。
锁码
public static final String [] APP_PACKAGES = {"com.example.app"};
ComponentName componentName = new ComponentName(activity, ApplicationAdmin.class);
assert devicePolicyManager != null;
if(devicePolicyManager.isAdminActive(componentName))
{
Log.d("LockTask", "Is admin");
devicePolicyManager.setLockTaskPackages(componentName, APP_PACKAGES);
if (devicePolicyManager.isLockTaskPermitted(context.getPackageName()))
{
Log.d("LockTask", "start locking");
activity.startLockTask();
}
else
{
Log.d("LockTask", "isLockTaskPermitted is false!!!");
}
}
设备管理员 xml
<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
<uses-policies>
<limit-password />
<watch-login />
<reset-password />
<force-lock />
<wipe-data />
</uses-policies>
如果我将“com.android.systemui”放在 APP_PACKAGES 中,它适用于 USB,但是用户可以通过长按主页按钮退出应用程序。
对于蓝牙,上述解决方案不起作用。
有没有办法限制蓝牙/usb 包只是为了访问系统对话框?
谢谢!
解决方案
推荐阅读
- javascript - 在 AspNetCore 中使用 Rotativa 将 Html 转换为 Pdf
- php - 如何使用带有 Scrapy 的 admin-ajax.php 从网站上抓取数据
- javascript - 向循环firebase云功能中的所有电子邮件发送电子邮件
- c# - 我的应用程序 SQL 连接在 iOS 上不起作用,但在 MacOS windows android 和统一编辑器中
- php - 带有通配符的 MySQLi 准备语句的奇怪结果(程序)
- sql-server - 在 sql server 中替换的情况
- javascript - jQuery,克隆元素并替换其名称的一部分
- reactjs - 如何为非反应应用程序构建反应组件
- hyperledger-fabric - 来自尝试的对等通信的响应是一个错误:链码错误
- sql - 如何在查询中从另一个表中获取记录?