-
public final class USBMonitor
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public interfaceUSBMonitor.OnDeviceConnectListenerCallback listener for connect USB device
public classUSBMonitor.UsbDeviceInfopublic classUSBMonitor.UsbControlBlockcontrol classnever reuse the instance when it closed
public classUSBMonitor.USBException
-
Field Summary
Fields Modifier and Type Field Description public static intUSB_OPEN_ERROR_UNKNOWNpublic final static StringACTION_USB_DEVICE_ATTACHED
-
Constructor Summary
Constructors Constructor Description USBMonitor(Context context, USBMonitor.OnDeviceConnectListener listener, Handler handler)USBMonitor(Context context, USBMonitor.OnDeviceConnectListener listener)
-
Method Summary
Modifier and Type Method Description voiddestroy()Release all related resources,never reuse again synchronized voidregister()register BroadcastReceiver to monitor USB events synchronized voidunregister()unregister BroadcastReceiver synchronized booleanisRegistered()voidsetDeviceFilter(DeviceFilter filter)set device filter voidaddDeviceFilter(DeviceFilter filter)add device filter voidremoveDeviceFilter(DeviceFilter filter)remove device filter voidsetDeviceFilter(List<DeviceFilter> filters)set device filters voidaddDeviceFilter(List<DeviceFilter> filters)add device filters voidremoveDeviceFilter(List<DeviceFilter> filters)remove device filters booleanisAvailableDevice(UsbDevice device)intgetDeviceCount()return the number of connected USB devices that matched device filter List<UsbDevice>getDeviceList()return device list, return empty list if no device matched List<UsbDevice>getDeviceList(List<DeviceFilter> filters)return device list, return empty list if no device matched List<UsbDevice>getDeviceList(DeviceFilter filter)return device list, return empty list if no device matched Iterator<UsbDevice>getDevices()get USB device list, without filter final voiddumpDevices()output device list to LogCat booleanhasPermission(UsbDevice device)return whether the specific Usb device has permission voidrequestPermission(UsbDevice device)request permission to access to USB device static StringgetDeviceKey(UsbDevice device)generate device key for each UsbDevice. static StringgetProductKey(UsbDevice device)USBMonitor.UsbDeviceInfogetDeviceInfo(UsbDevice device)get device info that contains ManufacturerName, ProductName, Version and SerialNumber static USBMonitor.UsbDeviceInfogetDeviceInfo(Context context, UsbDevice device)get device info that contains ManufacturerName, ProductName, Version and SerialNumber static USBMonitor.UsbDeviceInfoupdateDeviceInfo(UsbManager manager, UsbDevice device, USBMonitor.UsbDeviceInfo _info)update device info that contains ManufacturerName, ProductName, Version and SerialNumber -
-
Constructor Detail
-
USBMonitor
USBMonitor(Context context, USBMonitor.OnDeviceConnectListener listener, Handler handler)
-
USBMonitor
USBMonitor(Context context, USBMonitor.OnDeviceConnectListener listener)
-
-
Method Detail
-
destroy
void destroy()
Release all related resources,never reuse again
-
register
synchronized void register()
register BroadcastReceiver to monitor USB events
-
unregister
synchronized void unregister()
unregister BroadcastReceiver
-
isRegistered
synchronized boolean isRegistered()
-
setDeviceFilter
void setDeviceFilter(DeviceFilter filter)
set device filter
-
addDeviceFilter
void addDeviceFilter(DeviceFilter filter)
add device filter
-
removeDeviceFilter
void removeDeviceFilter(DeviceFilter filter)
remove device filter
-
setDeviceFilter
void setDeviceFilter(List<DeviceFilter> filters)
set device filters
-
addDeviceFilter
void addDeviceFilter(List<DeviceFilter> filters)
add device filters
-
removeDeviceFilter
void removeDeviceFilter(List<DeviceFilter> filters)
remove device filters
-
isAvailableDevice
boolean isAvailableDevice(UsbDevice device)
-
getDeviceCount
int getDeviceCount()
return the number of connected USB devices that matched device filter
-
getDeviceList
List<UsbDevice> getDeviceList()
return device list, return empty list if no device matched
-
getDeviceList
List<UsbDevice> getDeviceList(List<DeviceFilter> filters)
return device list, return empty list if no device matched
-
getDeviceList
List<UsbDevice> getDeviceList(DeviceFilter filter)
return device list, return empty list if no device matched
-
getDevices
Iterator<UsbDevice> getDevices()
get USB device list, without filter
-
dumpDevices
final void dumpDevices()
output device list to LogCat
-
hasPermission
boolean hasPermission(UsbDevice device)
return whether the specific Usb device has permission
-
requestPermission
void requestPermission(UsbDevice device)
request permission to access to USB device
-
getDeviceKey
static String getDeviceKey(UsbDevice device)
generate device key for each UsbDevice. Returns an empty string if device is nulluse manufacture name, version, and configuration count if the API >= LOLLIPOP
-
getProductKey
static String getProductKey(UsbDevice device)
-
getDeviceInfo
USBMonitor.UsbDeviceInfo getDeviceInfo(UsbDevice device)
get device info that contains ManufacturerName, ProductName, Version and SerialNumber
-
getDeviceInfo
static USBMonitor.UsbDeviceInfo getDeviceInfo(Context context, UsbDevice device)
get device info that contains ManufacturerName, ProductName, Version and SerialNumber
-
updateDeviceInfo
static USBMonitor.UsbDeviceInfo updateDeviceInfo(UsbManager manager, UsbDevice device, USBMonitor.UsbDeviceInfo _info)
update device info that contains ManufacturerName, ProductName, Version and SerialNumber
-
-
-
-