当我尝试使用连接到网址的HttpClient时,我遇到了一个问题.即使我设置了连接超时后,http连接也需要更长的时间才能超时.
int timeoutConnection = 5000;
HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);
int timeoutSocket = 5000;
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
Run Code Online (Sandbox Code Playgroud)
它大部分时间都很完美.然而,每隔一段时间,http连接就会永远运行并忽略setconnectiontimeout,特别是当手机连接到wifi时,手机处于空闲状态.
因此,在手机闲置后,我第一次尝试连接时,http连接忽略了setconnectiontimeout并且永远运行,在我取消它并再次尝试之后,它每次都像魅力一样.但是有一次它不起作用会产生threadtimeout错误,我尝试使用不同的线程,它可以工作,但我知道线程运行了很长时间.
我明白wifi在闲置时睡觉,但我不明白为什么它忽略了setconnectiontimeout.
任何人都可以帮忙,我真的很感激.