如何获得连接到Android设备的USB配件列表?

f0ofjuux  于 2023-01-24  发布在  Android
关注(0)|答案(2)|浏览(224)

我有一个基于棒棒糖的安卓盒子。盒子有一个USB端口,类似于安卓手机中的微型USB端口。我想检查是否有任何主机连接到USB端口,安卓盒子处于设备模式,类似于手机连接到PC。至少,我只需要检查是否有东西连接到这个USB端口,最好得到一些信息(制造商,型号,序列号)的主机连接。我不需要任何数据通信。
我试过了

UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE);
manager.getAccessoryList();

但它却是空的,即使我已经连接了我的笔记本电脑到它和adb和文件传输正在工作。
虽然在进一步阅读似乎android usb配件API仅限于特殊的android配件。

ngynwnxp

ngynwnxp1#

UsbManager m = (UsbManager)getApplicationContext().getSystemService(USB_SERVICE);
HashMap<String, UsbDevice> usbDevices = m.getDeviceList();
Collection<UsbDevice> ite = usbDevices.values();
UsbDevice[] usbs = ite.toArray(new UsbDevice[]{});
for (UsbDevice usb : usbs) {    
    Log.d("Connected usb devices","Connected usb devices are "+ usb.getDeviceName());
}
qoefvg9y

qoefvg9y2#

您可以使用Android USBManager,如在此线程Android : how to detect already connected usb device?中,或者您可以在Android上安装libusb:https://github.com/libusb/libusb/tree/master/android
(一个一个二个一个x,一个一个一个三个一个x)

相关问题