通过 OTG 电缆插入 android 时检测拇指驱动器(闪存驱动器)

Detect thumb drive(flash drive) when plugged in android via OTG cable

我正在尝试检测插入 android 平板电脑的闪存驱动器。根据我所看到的,我尝试注册一个如下所示的接收器,但这不起作用:

 <receiver android:name=".receiver.UsbBroadcastReceiver"
              android:enabled="true">
        <intent-filter>
            <action android:name="android.intent.action.MEDIA_MOUNTED"/>
            <data android:scheme="file"/>
        </intent-filter>
</receiver>

我有以下权限:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_LOGS"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

我也没有看到安全异常。投票是唯一的方法吗?

也许一个好的起点是查看开发文档。似乎还有其他相关操作:

http://developer.android.com/reference/android/hardware/usb/UsbManager.html#ACTION_USB_ACCESSORY_ATTACHED

如果我没有理解错的话,你看到的是External Media,和OTG不完全一样