我正在创建一个使用TCP下载文件的Android应用程序。它已经完成并且运行良好,但我在下载文件时遇到了从网络切换到另一个网络的问题,因为下载停止并最终超时。有些设备甚至具有在找到合适的热点时立即激活WiFi的功能,并禁用现有的移动数据连接。
如何在切换网络时保持基于TCP的连接存活?它甚至可能吗?我对网络知之甚少,但我知道TCP连接固定在IP上,Android手机上的移动网络和wifi接口有不同的IP。那么,如果IP发生变化,现有连接是否完全无法被其他网络连接?
答案 0 :(得分:3)
以较小的块下载文件,而不是完整下载。如果一个块由于连接更改而超时,则使用当前可用的连接类型再次启动块。