BulkTransfer возвращает положительное значение, но связь не удалась.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 BulkTransfer возвращает положительное значение, но связь не удалась.

Сообщение Anonymous »

Как указано Google на сайте Android Developers

public int BulkTransfer (конечная точка UsbEndpoint, буфер byte[], int
длина, время ожидания int)
Возвращает длину переданных данных (или ноль) в случае успеха или отрицательное значение в случае сбоя< /p>


Ну, после выполнения массовой передачи в моем приложении для связи USB CDC

Код: Выделить всё

// send data to usb device
byte[] bytes = data.getBytes();
sentBytes = connection.bulkTransfer(output, bytes, bytes.length, 1000);

Код: Выделить всё

sentBytes
получает значение 16, и это здорово, потому что я действительно отправляю 16 байт.
Это должно указывать, что байты были отправлены правильно. :-)
Однако это НЕ. Я не вижу никаких результатов на другой стороне.

После исследования я обнаружил, что это может быть проблема с интерфейсом, и вот как это сделать. Получаю с устройства:

Код: Выделить всё

private void setupConnection()
{
// find the right interface
for(int i = 0; i < usbDevice.getInterfaceCount(); i++)
{
// communications device class (CDC) type device
if(usbDevice.getInterface(i).getInterfaceClass() == UsbConstants.USB_CLASS_CDC_DATA)
{
intf = usbDevice.getInterface(i);

// find the endpoints
for(int j = 0; j < intf.getEndpointCount(); j++)
{
if(intf.getEndpoint(j).getDirection() == UsbConstants.USB_DIR_OUT && intf.getEndpoint(j).getType() == UsbConstants.USB_ENDPOINT_XFER_BULK)
{
// from android to device
output = intf.getEndpoint(j);
}

if(intf.getEndpoint(j).getDirection() == UsbConstants.USB_DIR_IN && intf.getEndpoint(j).getType() == UsbConstants.USB_ENDPOINT_XFER_BULK)
{
// from device to android
input = intf.getEndpoint(j);
}
}
}
}
}
Что я мог упустить?

Подробнее здесь: https://stackoverflow.com/questions/304 ... successful
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»