我知道从 Android 3.1 开始就支持它,我的意思是“如何检查硬件支持”
问问题
2514 次
2 回答
2
请参阅:http: //developer.android.com/reference/android/content/pm/PackageManager.html#FEATURE_USB_HOST
context.getPackageManager().hasSystemFeature(
PackageManager.FEATURE_USB_HOST);
于 2015-02-11T10:51:11.803 回答
0
我有同样的问题,经过一番谷歌搜索后,我发现了这个: http ://android.serverbox.ch/?p=549
总之,您的应用程序需要使用 UsbManager 系统服务并通过连接的 USB 设备进行枚举。
mUsbManager = (UsbManager) mApplicationContext.getSystemService(Context.USB_SERVICE);
HashMap<String, UsbDevice> devlist = mUsbManager.getDeviceList();
Iterator<UsbDevice> deviter = devlist.values().iterator();
while (deviter.hasNext()) {
UsbDevice d = deviter.next();
if (mUsbManager.hasPermission(d)) {
UsbInterface usbIf = mDevice.getInterface(1);
for (int i = 0; i < usbIf.getEndpointCount(); i++) {
if (usbIf.getEndpoint(i).getType() == UsbConstants.USB_ENDPOINT_XFER_BULK) {
//...
}
}
}
}
于 2013-10-30T05:51:18.513 回答