gpt4 book ai didi

java - Android 无法发送多播 UDP 数据报

转载 作者:太空宇宙 更新时间:2023-11-04 14:02:14 26 4
gpt4 key购买 nike

在为 Android 编写一个简单的 UDP 广播应用程序时,我遇到了一个奇怪的问题。

基本上,我的应用程序想要将数据流广播到本地网络上的设备。每个 UDP 数据包都有一个按顺序递增的数字,以便我知道数据包何时丢失。

当我进行测试时,我注意到大约 80% 的数据包丢失了。现在我知道 UDP 是有损的,但这在 LAN 上是疯狂的。

因此,我在 JRE7 上编写了完全相同的发送器并启动了它。完全相同的代码损失率几乎为零。

当我在 Android 上切换到单播(只需更改目标 IP 地址,无需更改代码)时,丢失率为 0%。

对于单播,我有点担心应用程序的可扩展性。

有谁知道 Android 中是否存在一些已知的错误,导致发送多播数据报时出现问题?

我相当确定这不是接收器的问题,因为我使用同一个接收器进行单播和广播接收。

感谢您的想法。

最佳答案

同样的情况也发生在我身上...还不知道为什么..尝试更小的封装如果您需要广播它,则在客户端上有一个反向确认,在服务器上有一个确认监听器。如果您找到更好的解决方案,我在另一篇文章中会问几乎相同的问题...我已经通过反向确认代码管理了数据包丢失,但因此性能不佳。注意:由于声誉问题,我无法添加评论

关于java - Android 无法发送多播 UDP 数据报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29193787/

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