检测连接的 USB 设备
Detect connected USB device
我正在开发一个 Android 应用程序,它必须检测 USB 转换器(例如 USB-C 到 USB 微型公转母转换器)是否连接到正在使用的设备。来自 this link 我认为这可能适用于 USB micro 和 USB-C,因为它们都有一个用于 "Mode Detect" 的 ID 引脚。
我已经在 Whosebug 上查看了 this post,它可以检测设备是否连接到 PC,但不能检测 USB 连接(例如)插入的转换器。
所以我想知道的是:
- 是否可以检测USB转换器是否已插入设备?
- 如果是这样,如何以编程方式检测到这一点?
如有任何帮助,我们将不胜感激。
您应该在清单中使用 USB_DEVICE_ATTACHED 意图。要在连接设备时自动启动您的应用程序,您还应该指定 device_filter.xml
<activity ...>
...
<intent-filter>
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
</intent-filter>
<meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
android:resource="@xml/device_filter" />
</activity>
您可以找到更多说明here
我正在开发一个 Android 应用程序,它必须检测 USB 转换器(例如 USB-C 到 USB 微型公转母转换器)是否连接到正在使用的设备。来自 this link 我认为这可能适用于 USB micro 和 USB-C,因为它们都有一个用于 "Mode Detect" 的 ID 引脚。
我已经在 Whosebug 上查看了 this post,它可以检测设备是否连接到 PC,但不能检测 USB 连接(例如)插入的转换器。
所以我想知道的是:
- 是否可以检测USB转换器是否已插入设备?
- 如果是这样,如何以编程方式检测到这一点?
如有任何帮助,我们将不胜感激。
您应该在清单中使用 USB_DEVICE_ATTACHED 意图。要在连接设备时自动启动您的应用程序,您还应该指定 device_filter.xml
<activity ...>
...
<intent-filter>
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
</intent-filter>
<meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
android:resource="@xml/device_filter" />
</activity>
您可以找到更多说明here