java - Android USB OTG : How to detect Mass Storage hot-plug event, 然后复制数据?

标签 java android usb file-transfer usb-otg

我有一台基于 Android 的华为平板电脑,运行 Lollipop,并且想知道如何检测 USB 大容量存储 OTG 是否已热插拔,以及如何在设备连接后将文件从 OTG 复制到平板电脑内部存储。

经过一番搜索,我还没有找到可行的解决方案。例如,以下 StackOverflow 答案没有为我的案例提供可行的解决方案。只是想知道是否有人可以建议一个文档、项目或示例代码来解决问题,或者可以向我指出我需要使用的 API?

Transfer Files USB Mass Storage OTG

How app can access files on USB OTG storages in Android 6.0 (API level 23) without root?

最佳答案

要检测正在安装/卸载的 USB,您可以使用 UsbHost

您基本上有 2 个选项可以从 USB 设备读取/写入文件。

存储访问框架 - 这不适用于所有设备。这取决于设备制造商设置的权限。根据我的经验,它适用于大多数三星设备,但不适用于 HTC 或 Nexus。我不太清楚华为的情况。

UsbDeviceConnection - 这是相当低级的东西,但是有一个库可以用于很好的示例:https://github.com/magnusja/libaums

还有一个非常好的开源文件管理器,您应该看看:https://github.com/1hakr/AnExplorer

关于java - Android USB OTG : How to detect Mass Storage hot-plug event, 然后复制数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41565535/

相关文章:

c++ - 如何在 Windows 上检测 USB 速度

java - 无法在 64 位引擎下启动 jar(无法加载 IA 32 位.dll)+ 无法使用 System.load() 从当前路径包含库

java - Java中的ArrayList操作

java - 使用 MonkeySurvey API 发送嵌入式调查电子邮件

android - 火力地堡 : How to put the currently returned node's key into a POJO as a field

android - 如何让Android应用程序(电视盒)识别或访问USB网络摄像头?

java - 使用 Java 在 Raspberry Pi 3 上读取和写入 USB 设备

java - 使用 RingCentral API 添加新联系人

android - 如何在 WebView 中获取 POST 请求的 JSON 响应?

java - 如何在一个列表中过滤相同的纬度,日志值?