我偶尔会看到有人提到android.hardware.usb.action.USB_STATE
广播,据说其中包含一些USB状态信息。
它似乎不是官方Android API的一部分。是否有任何文档,特别是受支持的其他功能列表?
答案 0 :(得分:0)
来自platform_frameworks_base/core/java/android/hardware/usb/UsbManager.java:
该常量用@UnsupportedAppUsage
标记,表示该常量不打算被应用程序使用。这可能意味着不能保证它在各个版本中都是稳定的。
此外,该意图似乎表示主机的USB链接状态,而不是USB OTG状态。
UsbManager
的Javadoc说:
该类使您可以访问USB的状态并与USB设备通信。当前,公共API仅支持主机模式。
对于ACTION_USB_STATE
:
广播操作:在设备模式下,针对USB状态更改事件的即时广播。
这是客户端的粘性广播,其中包括USB连接/断开状态,
"connected"
布尔值,指示USB是已连接还是已断开。"host_connected"
布尔值,指示USB是作为主机连接还是断开。"configured"
布尔值,指示是否已配置USB。当前为零(如果未配置),一个为已配置。"adb"
布尔值布尔值,表示是否已启用adb功能"rndis"
布尔值布尔值,指示是否启用了RNDIS以太网功能"mtp"
布尔值布尔值,表示是否启用了MTP功能USB_FUNCTION_PTP
布尔值布尔值,指示是否启用了PTP功能"ptp"
布尔值布尔值,指示是否启用了附件功能"audio_source"
布尔值布尔值,指示是否启用了音频源功能"midi"
布尔值布尔值,表示是否启用了MIDI功能如果未发现粘性意图,则表明USB已断开连接,未配置USB,已启用MTP功能并已禁用所有其他功能。