Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 如何在USB OTG设备上列出文件大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我知道如何做以下事项:

>听取附加和分离usb设备的事件@H_607_4@>获取所有连接的设备@H_607_4@>获取设备的权限

所以最后我有一个UsbDevice,我有权读/写它.怎么从这里继续?

我可以打开设备并获得如下的FileDescriptor:

 UsbManager manager = (UsbManager) activity.getSystemservice(Context.USB_serviCE);
 UsbInterfacE intf = device.geTinterface(0);
 UsbEndpoint endpoint = intf.getEndpoint(0);
 UsbDeviceConnection connection = manager.openDevice(devicE);
 Boolean interfaceClaimed = connection.claimInterface(intf,truE);
 int fileDescriptor = connection.getFileDescriptor();

我现在如何使用这个FileDescriptor?或者我怎样才能访问USB设备上的文件

编辑

> Android的解决方案<>@H_607_4@> Android的解决方案> = 6:使用存储访问框架,实际上我不知道它是如何工作的……

最佳答案
因为我和你一样难过,所以我会选择使用ls命令.

代码例:

try {
    Process process = Runtime.getRuntime().exec("ls /storage/UsbDriveA");
    BufferedReader in = new BufferedReader(new InputStreamReader(process.geTinputStream()));
    String listOfFiles = "";
    String line;
    while ((line = buffer.readLine()) != null) {
      listOfFiles += line;
    }
} catch (InterruptedException E) {
    e.printStackTrace();
}

如果挂载点不正确,ls将不返回此类文件或目录.

以下是制造商使用的许多安装点的列表:

/storage/UsbDriveA     (all Samsung devices)
/storage/USBstorage1   (LG G4,V10,G3,G2,other LG devices)
/storage/usbdisk       (Moto Maxx,Turbo 2,Moto X Pure,other Motorola devices)
/storage/usbotg        (Sony Xperia devices,Lenovo Tabs)
/storage/UDiskA        (Oppo devices)
/storage/usb-storage   (Acer Iconia Tabs)
/storage/usbcard       (Dell Venue -- Vanilla Android 4.3 tablet)
/storage/usb           (HTC One M7,and some Vanilla Android devices)

(基于我收集的设备和其他3个人,以及快速前往Bestbuy测试最新旗舰.我知道我唯一缺少的流行设备是位于中国的Hawuei / Xioami设备,这些设备在英国国家越来越受欢迎,但可能他们使用上述之一.)

要找到正确的挂载点,您将不会侦听此类文件或目录,并使用下一个挂载点循环/重新执行exec()语句.

完成所有操作后,您可以使用cat /storage/…/file.txt轻松读取文件,并使用重定向进行写入:echo test> /storage/…/file.txt

希望这可以帮助

大佬总结

以上是大佬教程为你收集整理的android – 如何在USB OTG设备上列出文件全部内容,希望文章能够帮你解决android – 如何在USB OTG设备上列出文件所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。