gpt4 book ai didi

android - 在 USB 主机模式下从 UsbDeviceConnection 读取的最佳方法

转载 作者:行者123 更新时间:2023-11-30 04:25:55 29 4
gpt4 key购买 nike

要从打开的 USB 连接读取数据,请使用 UsbDeviceConnection bulkTransfer 方法。

我的情况是在发送请求后例程应该读取所​​有传入数据,这些数据可能只有 8 个字节甚至 300 多个字节。

问题是 bulkTransfer 出于某种原因没有读取所有字节 - 它只是返回一些字节,而可能还会有更多字节。

是围绕 bulkTransfer 编写一个循环直到没有更多数据,还是增加超时,或者可能有其他方法更好。

处理此问题的最佳方法是什么?

我尝试了循环方法,令我惊讶的是它每次仅读取大约 10-20 个字节,超时甚至为 1 秒。我确信已经有更多数据可用,不知道为什么它一次不读取更多数据。

使用哪个缓冲区大小有关系吗 - 许多示例都有 4096,但更改它如何影响数据读取?

非常感谢

最佳答案

如果设备一次发送 10 个字节并重复发送以完成 300+ 个字节,则每次使用批量传输读取时,您仍然只能获得这些 10 个字节的 block 。

换句话说,该方法不会等待填满您的缓冲区。一有东西就回来。所以如果你真的想收集整个 300+ 字节的响应,你确实需要循环。

关于android - 在 USB 主机模式下从 UsbDeviceConnection 读取的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8527757/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com