我在 Android 应用程序和 Web 服务器之间建立了 TCP 连接。如果我在一小时内没有发送任何数据包,那么我就无法再使用此连接发送/接收数据。我需要发送一些心跳包吗?如果我不通过此连接发送任何数据,Android 中 TCP 连接的超时值是多少?
Android版本是2.2。我使用 HTTP 长轮询来访问服务器。
最佳答案
假设您实际上只是发出 HTTP 请求,我强烈建议您不要尝试无限期地使其保持 Activity 状态。即使您的客户端代码和服务器都乐意这样做,您也可能会发现有各种代理可能想要在此之前终止连接。 (诚然,我希望客户端会看到请求失败。)
根据我上次研究长轮询的内存,对于长轮询请求来说,大约 8 分钟是合理的超时时间。您每小时仍然只会发出八个请求,因此不会有大量流量 - 而且我强烈怀疑它会更可靠。
关于android - Android 中 TCP 连接的超时值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8951877/