我使用Socket.setSoTimeout(54000) API设置了套接字的超时时间
在大多数情况下,如果服务器没有响应,我会注意到经过了一段时间(在这种情况下为9分钟),API会引发预期的“ SocketTimeoutException:读取超时”异常。
但是,在Samsung(操作系统版本23)(Nexus 6P并没有发生)设备中,我看到设备进入“空闲模式”可能需要45分钟到180分钟之间的任何时间。 (我使用PowerManager#isDeviceInIdleMode API确定设备的空闲状态)
这是预期的吗? 是否有解决此问题的方法,例如套接字在设置的超时时间超时?
此外,我的应用正在使用Apache Http client 4.4.1.2 我还通过HttpConnectionParams#setSoTimeout
设置了超时时间谢谢!