我正在编写Android设备是主机的应用程序.用户将USB驱动器连接到Android设备,我的应用程序将在USB驱动器中写入一些文本文件.文本文件的路径就像USB_DRIVE/Data/APP_NAME/myfile.txtUSB驱动器内部一样.
应用程序还应该能够从特定位置读取文本文件,如果它可以列出文件USB_DRIVE/Data/APP_NAME夹中的所有文件并且用户可以选择文件,则应该更好.
UsbInterface intf = device.getInterface(0);
UsbEndpoint endpoint = intf.getEndpoint(0);
UsbDeviceConnection connection = mUsbManager.openDevice(device);
connection.claimInterface(intf, forceClaim);
connection.bulkTransfer(endpoint, bytes, bytes.length, TIMEOUT);
我不知道如何使用bytes数组在USB_DRIVE的特定路径中写入文件.
仅供参考:我的设备中没有类似于/storage/usb0/或的路径/storage/usbdisk0/.在里面/storage/,文件结构如下,
存储
模拟
0
SD_CARD内容
遗产
SD_CARD内容
sdcard0 - SD_CARD内容
我的测试设备是Nexus 10.
我尝试使用ES File explorer app并使用此应用程序,我可以成功地将任何文件从SD_CARD移动/复制到USB_DRIVE; 即:OTG工作正常,从App到USB_DRIVE的读/写文件是可行的.传输任何文件后,ES显示文件的路径,如,usb://1002/myfile.txt.
如果我可以使用ES意图编写/移动/读取文件或者也可以使用某些东西.
或者,如果任何FTP解决方案可以帮助我实现功能,我会去实现它.
谢谢.