嘿,我已经尝试了一段时间了,但是我什么都没有
我正在尝试从USB设备获取字节,这对于进来的一两行工作正常,但是当数量增加到几行时,它根本不起作用.
我正在使用以下代码行来引入数据:
conn.bulkTransfer(epIN, buffer, 57600, 500);
有没有办法一遍又一遍地进行USB传输,直到没有更多数据进入?因为传入的数据量可以是8字节到几MB
回复用户387184
这样的事情可以传输大量数据吗?
while ( conn.bulkTransfer(epIN, buffer, 57600, 500) > 0 ){
\\do some stuff
}
解决方法:
如果您的USB连接在没有更多数据的情况下确实停止接收数据,那么您所需要做的就是在语句周围放置一时间receiveBufferIsNotEmpty,因为:
lenOfReceivedBuffer = conn.bulkTransfer(epIN, buffer, 57600, 500);
如果使用500ms超时在端口上找不到更多数据,则在lenOfReceivedBuffer中获取0.
如果发送方太慢,则还可能会增加超时时间.
标签:usb,android
来源: https://codeday.me/bug/20191201/2079281.html