我正在使用从android本地服务启动的线程,在我让手机进入睡眠模式后,稍后在我的服务器端重置连接后重复使用它。
我正在寻找连接重置的原因,并在几天前寻找这个。
答案 0 :(得分:1)
我有同样的问题,服务器在手机睡了几分钟后发送一些ping数据包给Android手机时也会得到一个RST。
我认为以下帖子可能会回答一些问题: http://groups.google.com/group/android-developers/browse_thread/thread/8a611b2aeaa4d620
您使用的是什么网络(电话网络或WIFI)?
我的手机通过EDGE网络连接。 我每6分钟发送一次服务器发送消息,服务器在前6分钟后总是得到RST,但是5分钟会使连接保持活动状态。我还试着让服务器每隔2分钟发送一次消息(电话屏幕关闭),连接可以保持很长时间(我测试了一个小时以上)。
然后我保持手机屏幕开启(它不会睡觉)并再次尝试,但是6分钟后连接再次被杀死(服务器获得了RST),所以似乎安卓不是RST的原因。
根据我的测试结果,我认为我的手机网络供应商正在杀死这些长时间连接至少闲置6分钟,并将RST发送到手机和服务器。 所以可能与手机睡眠无关。
我没有在其他网络上测试过,如果你这样做,请告诉我结果。