如何获取连接到我的Android设备的USB设备的ID(或一些独特的属性)?
1cosmwyk1#
对于任何不熟悉UsbDevice的人来说,可能值得注意UsbManager的使用
UsbDevice
UsbManager
UsbManager usbManager = (UsbManager) getSystemService(Context.USB_SERVICE); HashMap<String, UsbDevice> usbDevices = usbManager.getDeviceList();
阅读更多http://developer.android.com/reference/android/hardware/usb/UsbManager.html
tvokkenx2#
您可以使用UsbDevice.getDeviceId()方法获取Android连接的USB设备的唯一ID。请查看以下链接了解更多详情。http://developer.android.com/reference/android/hardware/usb/UsbDevice.html#getDeviceId()超过Id,请检查类“UsbDevice”的其他方法。http://developer.android.com/reference/android/hardware/usb/UsbDevice.html
lzfw57am3#
您可以使用UsbDevice.getVendorId()和UsbDevice.getProductId()的组合,只要用户不连接相同型号的设备两次,这应该几乎不会发生。假设供应商ID为max。4个十六进制数字,您可以将供应商ID左移16位,然后添加产品ID,以获得特定于型号的唯一int标识符。Kotlin代码:
UsbDevice.getVendorId()
UsbDevice.getProductId()
int
val device: UsbDevice = ... int modelId = (device.vendorId shl 16) + device.productId
3条答案
按热度按时间1cosmwyk1#
对于任何不熟悉
UsbDevice
的人来说,可能值得注意UsbManager
的使用阅读更多http://developer.android.com/reference/android/hardware/usb/UsbManager.html
tvokkenx2#
您可以使用UsbDevice.getDeviceId()方法获取Android连接的USB设备的唯一ID。
请查看以下链接了解更多详情。http://developer.android.com/reference/android/hardware/usb/UsbDevice.html#getDeviceId()
超过Id,请检查类“UsbDevice”的其他方法。http://developer.android.com/reference/android/hardware/usb/UsbDevice.html
lzfw57am3#
您可以使用
UsbDevice.getVendorId()
和UsbDevice.getProductId()
的组合,只要用户不连接相同型号的设备两次,这应该几乎不会发生。假设供应商ID为max。4个十六进制数字,您可以将供应商ID左移16位,然后添加产品ID,以获得特定于型号的唯一
int
标识符。Kotlin代码: