在Android上通过USB Host发送简单图片

时间:2017-01-05 17:06:01

标签: android android-usb usb-hostcontroller

我已使用https://developer.android.com/guide/topics/connectivity/usb/host.html

上的代码段尝试了该程序

我能够发现UsbDevice连接,但仍然不知道如何建立连接,以便我可以传递一个简单的jpeg文件并在接收端接收它。任何指导都将不胜感激。

1 个答案:

答案 0 :(得分:0)

我不确定你到底在哪里,但你发布的链接似乎有所需的所有信息。 保留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

See this code for a full sample.