public static boolean usbAudio(Context context) {
UsbManager mUsbManager = (UsbManager) context.getSystemService(Context.USB_SERVICE);
Map<String, UsbDevice> mDeviceMap = mUsbManager.getDeviceList();//获取系统内的所有usb设备
for (Map.Entry<String, UsbDevice> entry : mDeviceMap.entrySet()) {
UsbDevice usbDevice = entry.getValue();
// Log.d(TAG, "USB Device " +
//// ", SerialNumber=" + usbDevice.getSerialNumber()
// "DeviceId=" + usbDevice.getDeviceId() +
// ", DeviceName=" + usbDevice.getDeviceName() +
// ", ProductId=" + usbDevice.getProductId() +
// ", ProductName=" + usbDevice.getProductName() +
// ", ManufacturerName=" + usbDevice.getManufacturerName() +
// ", Version=" + usbDevice.getVersion() +
// ", VendorId=" + usbDevice.getVendorId() +
// " ,DeviceClass=" + usbDevice.getDeviceClass()
//
// );
int interfaceCount = usbDevice.getInterfaceCount();
for (int index = 0; index < interfaceCount; index++) {
UsbInterface usbInterface = usbDevice.getInterface(index);
if (usbInterface.getInterfaceClass() == UsbConstants.USB_CLASS_AUDIO) {
Log.d(TAG, "USB Audio: " + usbDevice.getProductName());
break;
}
}
}
return false;
}