【发布时间】:2015-06-15 16:44:15
【问题描述】:
我在 Android 中发送和接收 UDP 数据包时遇到问题。 我必须定期发送它们,当两部电话都打开屏幕时一切正常。
当我关闭屏幕时,发送消息的手机停止发送消息,然后,当我再次触摸屏幕时,它再次开始发送消息,但如果正在接收的手机关闭屏幕,它不会'什么都收不到。
假设两部手机 A 正在接收,B 正在发送:
1 - 他们都打开了屏幕。
2 - 我关闭了 B 的屏幕 --> B 不发送消息
3 - 我打开 B 的屏幕 --> B 再次开始发送消息
4 - 我关闭了 A 的屏幕 --> B 正在发送,但 A 没有收到任何内容
5 - 我打开 A 的屏幕 --> 一切又正常了。
有谁知道 Android 中的 UDP 发送/接收是否存在某种问题? (例如,在 iOS 中,当屏幕关闭时,通过 UDP 的接收被阻止)。我读到 UDP 广播数据包的接收存在问题,但在这种情况下没有广播,它们被发送到特定的 IP 和端口。
提前致谢!
编辑:
再问一个问题,我们在使用移动网络时有什么额外的考虑吗?使用唤醒锁,当我使用 wifi 时一切正常,但是当我使用 3g 时,我无法接收任何东西(但另一部手机正在使用 3g 发送)。在移动网络中接收 UDP 数据包是否有限制?或者它也应该可以正常工作?
【问题讨论】: