用UsbManager来识别外置的camera设备,授权打开的功能。
授权功能
//申请USB连接权限
private synchronized void requestPermission(UsbDevice device) {
//申请USB连接权限
mPermissionIntent = PendingIntent.getBroadcast(appContext, 0, new Intent(ACTION_USB_PERMISSION), PendingIntent.FLAG_UPDATE_CURRENT);
mUsbManager.requestPermission(device, mPermissionIntent);
}
之前一直使用的是SDK27的版本,授权都是没有问题,弹出授权框授权,当我兼容了androidx升级到了28之后,授权框就一直不弹出。
查看日志,发现在授权的时候,会有一句这样的打印
UsbUserSettingsManager: Camera permission required for USB video class devices
原因是应该28之后,需要动态申请camera权限才可以授权弹框。
解决办法,要不版本到27及以下,要么先授权camera。