gpt4 book ai didi

android - 在 Android 中通过蓝牙发送数据的最大数据包大小是多少?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:16:22 24 4
gpt4 key购买 nike

我正在开发一个 Android 蓝牙项目,用于从定制硬件发送和接收数据。我以SDK中的Bluetooth Chat Sample为基础。

我正在将数据从一台设备发送到另一台设备 (LG Nexus 4)。一切正常,直到我达到 1004 字节的长度(这是音频数据)。那时它在大多数情况下将其拆分为 2 条 990 字节和 14 字节的消息。但奇怪的是有时它发送 1004 而不拆分(大约 100 次中的 4 次)。

我正在发送这个 1004 字节的数据包,其中 4 个字节是我的 header ,其余 1000 字节是我想按照 header 中的命令使用的实际数据,现在如果数据包按照上述方式拆分比我无法处理流程。

所以,请让我知道为什么数据包会以这种方式 split ,我怎样才能停止这种 split ,或者,如果我不能这样做,请给我建议任何替代方法来做到这一点。

谢谢。

最佳答案

通过蓝牙套接字发送的数据被抽象为流。这里传输层被分解成数据包,其中数据包的最大大小几乎为 1KB(1000 字节)。因此,您可以设计一种机制,在该机制中您可以在 header 中发送消息长度信息,然后在接收方必须进行后续的 read() 调用;每个返回一个数据包的数据。

关于android - 在 Android 中通过蓝牙发送数据的最大数据包大小是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17419036/

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