Отправить простую картинку через USB Host на Android
Я уже пробовал программу с использованием фрагментов кода на https://developer.android.com/guide/topics/connectivity/usb/host.html
Я могу обнаружить подключенный UsbDevice, но до сих пор не знаю, как установить соединение, чтобы я мог передать простой файл JPEG и получить его на стороне получателя. Любое руководство будет оценено.
1 ответ
Я не уверен, где именно вы застряли, но ссылка, которую вы разместили, кажется, содержит всю необходимую информацию. Как только вы овладели UsbDevice
Вам необходимо запросить разрешение на связь (см. Получение разрешения на связь с устройством). Затем вы можете передать данные, используя следующий код:
private Byte[] bytes; //Convert your jpeg into a byte array and load it in this variable.
private static int TIMEOUT = 0;
private boolean forceClaim = true;
...
UsbInterface intf = device.getInterface(0);
UsbEndpoint endpoint = intf.getEndpoint(0);
UsbDeviceConnection connection = mUsbManager.openDevice(device); //this opens the connection
connection.claimInterface(intf, forceClaim);
connection.bulkTransfer(endpoint, bytes, bytes.length, TIMEOUT); //this actually sends the bytes to the other device.
С другой стороны вам нужно будет преобразовать ваш байтовый массив обратно в JPEG