Android usb bulkTransfer - device doesn't receive whole data -
i try receive data usb scanner. use bulktransfer. code :
byte[] receivedtag = connector.receive(312); string tag = null; if (receivedtag != null) { long tagvalue = bytebuffer.wrap(receivedtag).getlong(); tag = long.tohexstring(tagvalue); if (tag.contains("daad046f62ada900")) { toast.maketext(getcontext(), "koniec skanowania" + tag, toast.length_short).show(); } else if (!tag.contains("daad046f62ada900")) { string tag2 = bytestohex(receivedtag); string[]times = tag2.split("da ad 0a 6f 73"); log.e(tag, "onclick: " + times[0]); toast.maketext(getcontext(), "" + tag2, toast.length_short).show(); }
it works part of data. example - device sends byte array :
string worktime = "da ad 0a 6f 73 00 00 00 00 00 00 44 a4 " + "da ad 0a 6f 73 01 00 00 00 00 00 45 75 " + "da ad 0a 6f 73 02 00 00 00 00 00 45 46 " + "da ad 0a 6f 73 03 00 00 00 00 00 44 97 " + "da ad 0a 6f 73 04 00 00 00 00 00 45 20 " + "da ad 0a 6f 73 05 00 00 00 00 00 44 f1 " + "da ad 0a 6f 73 06 00 00 00 00 00 44 c2 " + "da ad 0a 6f 73 07 00 00 00 00 00 45 13 " + "da ad 0a 6f 73 08 00 00 00 00 00 45 ec " + "da ad 0a 6f 73 09 00 00 00 00 00 44 3d " + "da ad 0a 6f 73 0a 00 00 00 00 00 44 0e " + "da ad 0a 6f 73 0b 00 00 00 00 00 45 df " + "da ad 0a 6f 73 0c 00 00 00 00 00 44 68 " + "da ad 0a 6f 73 0d 00 00 00 00 00 45 b9 " + "da ad 0a 6f 73 0e 00 00 00 00 00 45 8a" + "da ad 0a 6f 73 0f 00 00 00 00 00 44 5b" + "da ad 0a 6f 73 10 00 00 00 00 00 46 34" + "da ad 0a 6f 73 11 00 00 00 00 00 47 e5" + "da ad 0a 6f 73 12 00 00 00 00 00 47 d6" + "da ad 0a 6f 73 13 00 00 00 00 00 46 07" + "da ad 0a 6f 73 14 00 00 00 00 00 47 b0" + "da ad 0a 6f 73 15 00 00 00 00 00 46 61" + "da ad 0a 6f 73 16 00 00 00 00 00 46 52" + "da ad 0a 6f 73 17 00 00 00 00 00 47 83 " ;
but receive :
string worktime = "da ad 0a 6f 73 00 00 00 00 00 00 44 a4 " + "da ad 0a 6f 73 01 00 00 00 00 00 45 75 " + "da ad 0a 6f 73 02 00 00 00 00 00 45 46 " + "da ad 0a 6f 73 03 00 00 00 00 00 44 97 " + "da ad 0a 6f 73 04 00 00 00 00 00 45 20 " + "da ad 0a 6f 73 05 00 00 00 00 00 44 f1 " + "da ad 0a 6f 73 06 00 00 00 00 00 44 c2 " + "da ad 0a 6f 73 07 00 00 00 00 00 45 13 " + "da ad 0a 6f 73 08 00 00 00 00 00 45 ec " + "da ad 0a 6f 73 09 00 00 00 00 00 44 3d " + "da ad 0a 6f 73 0a 00 00 00 00 00 44 0e " + "da ad 0a 6f 73 0b 00 00 00 00 00 45 df " + "da ad 0a 6f 73 0c 00 00 00 00 00 44 68 " + "da ad 0a 6f 73 0d 00 00 00 00 00 45 b9 " + "da ad 0a 6f 73 0e 00 00 00 00 00 45 8a" + "da ad 0a 6f 73 0f 00 00 00 00 00 44 5b" + "da ad 0a 6f 73 10 00 00 00 00 00 46 34" + "da ad 0a 6f 73 11 00 00 00 00 00 47 e5" + "da ad 0a 6f 73 12 00 00 00 00 00 47 d6" + "da ad 0a 6f 73 13 00 00 00 00 00 00 00" + "00 00 00 00 00 00 00 00 00 00 00 00 00" + "00 00 00 00 00 00 00 00 00 00 00 00 00" + "00 00 00 00 00 00 00 00 00 00 00 00 00" + "00 00 00 00 00 00 00 00 00 00 00 00 00 " ;
as can see , last bytes 00 . know why ? wrong buffer ?
Comments
Post a Comment