Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从usb设备接收消息_Java_Android_Usb_External - Fatal编程技术网

Java 如何从usb设备接收消息

Java 如何从usb设备接收消息,java,android,usb,external,Java,Android,Usb,External,我有一个连接到Android的usb设备,当我按下按钮(位于usb设备上)时,它会发送一个“S”字符串。我如何检测这样的字符串 当我将Usb设备连接到windows,打开任何文本编辑器(如记事本+)并按下按钮时,会出现“S”字符串 我已经设法连接到一个设备,这是一个摄像头,并打开它。但是,有没有办法通过从文档中提取字符串“S”来检测何时按下按钮: USB服务包含隔离所有USB操作的服务。这是从串行端口读取的示例代码: String YOUR_DEVICE_NAME; byte[] DATA; i

我有一个连接到Android的usb设备,当我按下按钮(位于usb设备上)时,它会发送一个“S”字符串。我如何检测这样的字符串

当我将Usb设备连接到windows,打开任何文本编辑器(如记事本+)并按下按钮时,会出现“S”字符串

我已经设法连接到一个设备,这是一个摄像头,并打开它。但是,有没有办法通过从文档中提取字符串“S”来检测何时按下按钮:

USB服务包含隔离所有USB操作的服务。这是从串行端口读取的示例代码:

String YOUR_DEVICE_NAME;
byte[] DATA;
int TIMEOUT;

USBManager manager = getApplicationContext().getSystemService(Context.USB_SERVICE);
Map<String, USBDevice> devices = manager.getDeviceList();
USBDevice mDevice = devices.get(YOUR_DEVICE_NAME);
USBDeviceConnection connection = manager.openDevice(mDevice);
USBEndpoint endpoint = device.getInterface(0).getEndpoint(0);

connection.claimInterface(device.getInterface(0), true);
connection.bulkTransfer(endpoint, DATA, DATA.length, TIMEOUT);
String您的\u设备\u名称;
字节[]数据;
int超时;
USBManager manager=getApplicationContext().getSystemService(Context.USB_服务);
Map devices=manager.getDeviceList();
USBDevice mDevice=devices.get(您的设备名称);
USBDeviceConnection=manager.openDevice(mDevice);
USBEndpoint endpoint=device.getInterface(0).getEndpoint(0);
connection.claimInterface(device.getInterface(0),true);
连接传输(端点、数据、数据长度、超时);

希望有帮助。

验证设备(键盘-USB HID)是否能够枚举并与Android通信。我认为这里没有魔力。。。您需要实现从usb设备接收数据的代码:)@Hector我不想只从usb设备读取数据。我想在按下按钮时收到它的信息。所以,转移不起作用。我已经试过了。按下按钮时,Usb设备仅发送字符串。