Android USB Host читает/записывает файл на USB-устройстве OTG

Я пишу приложение, в котором Android-устройство является Host. Пользователь подключит USB-накопитель к устройству Android, и мое приложение будет записывать некоторые текстовые файлы на USB-накопитель. Путь текстовых файлов будет выглядеть как USB_DRIVE/Data/APP_NAME/myfile.txt внутри USB-накопителя.

Приложение также должно читать текстовые файлы из определенного места или даже лучше, если оно может отображать все файлы в папке USB_DRIVE/Data/APP_NAME, и Пользователь может выбрать файл.

Я нашел код в официальном сайте разработчика Android

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);

Я не уверен, как записать файл по определенному пути USB_DRIVE с использованием массива байтов.

FYI: в моем устройстве нет пути, аналогичного /storage/usb0/ или /storage/usbdisk0/. Внутри /storage/ структура файла похожа на следующую,

  • хранения
    • эмулировать
      • 0
        • Содержимое SD_CARD
      • наследие
        • Содержимое SD_CARD
    • sdcard0   - Содержание SD_CARD

Мое тестовое устройство - Nexus 10.

Я попытался с помощью приложения ES File explorer и с помощью этого приложения могу успешно перемещать/копировать любые файлы с SD_CARD на USB_DRIVE; i.e: OTG работает нормально, и чтение/запись файлов из App в USB_DRIVE выполнимо. После передачи любых файлов ES показывает путь к файлу, например, usb://1002/myfile.txt.

Если бы я мог писать/перемещать/читать файлы с использованием намерения ES или что-то, что тоже будет работать.

или, если какое-либо решение FTP может помочь мне в достижении функциональности, я пойду на это.

Спасибо.