usb驱动来源https://github.com/jiangdongguo/AndroidUSBCamera
android8以下没有问题;华为8x升级到android9之后发现不能连接摄像头,发现主要是协议过滤和获取到的不匹配:
华为8x为例:
android8 返回的是class =239 subClass = 2
android9 返回的是class =14 subClass = 9
适配:
1、修改
image.png
2、修改UVCCameraHelper.java
public List getUsbDeviceList() {
List deviceFilters = DeviceFilter
.getDeviceFilters(context, R.xml.device_filter);
if (mUSBMonitor == null || deviceFilters == null)
return null;
//获取多个设备过滤条件;之前只返回了第一个
return mUSBMonitor.getDeviceList(deviceFilters);
}
3、修改USBMonitor.java
public List getDeviceList(final List filters) throws IllegalStateException {
if (destroyed) thro