android - Knox 注册服务阻止摄像头访问
问题描述
我正在制作一个简单的 QR 扫描应用程序并使用 Google 的开源 Zebra Crossing 库来执行此操作。我以前做过一个,并且正在尝试与上次使用的完全相同的方法,但是某个Knox Enrollment Service阻碍了我。
在应用程序中,我有一个按钮,它调用看起来像这样的扫描功能。
public void scan(View v) {
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
startActivityForResult(intent, 0);
}
该函数正确触发并正确退出。在我制作的应用程序的过去版本中,相机会打开并寻找要扫描的二维码。而不是知道我收到一条错误消息,标题为
Knox Enrollment Service:抱歉,Android 摄像头遇到问题。您可能需要重新启动设备。
重启设备什么都不做。
Android 有什么变化吗?或者这特别是三星原生的东西?
最终,有没有办法绕过 Knox Enrollment Service 或其他方式我可以在不通过 Knox 的情况下扫描 QR 码?
解决方案
我也遇到了这个问题,幸运的是,通过反复试验,我找到了解决方案。
- 转到手机的搜索栏(在主屏幕上向下滑动)并输入“Knox Enrollment Service”
- 向下滚动到“权限”
- 点击“相机”,然后选择“允许”
- 退出您尝试使用的应用程序并重新启动该应用程序 - 它现在应该可以工作了
我不确定为什么默认情况下未启用它,但这似乎是问题的原因。在运行 Android 版本 10、Knox API 级别 30 的 Galaxy A51 上进行测试。
推荐阅读
- c++ - 使 std::fstream 写入文件末尾但从头开始读取
- react-native - 在 React Native 中中止获取请求
- python - psycopg2 使用多个线程或进程处理游标结果
- android - 在文本字段旁边显示图标
- web - 将参数从 Web 应用程序传递到 Unified Service Desk 内的 CRM 案例屏幕
- performance - WhatsApp 如何如此快速地显示讨论?
- magento2 - Magento 2 重新索引过程卡在 Category Products 和 Product Categories
- python - 为什么numpy的转置()结合日期时间
- php - 使用 php,mysql 从数据库中的电子邮件列表发送电子邮件
- project-reactor - 如何在 r2dbc 中加入表?