我有一个TCP客户端在异步任务中运行,从服务启动。一切似乎都正常工作但是一旦我收到我的设备的电话,我就会收到这个错误:
java.net.SocketException: recvfrom failed: ETIMEDOUT (Connection timed out) at libcore.io.IoBridge.maybeThrowAfterRecvfrom(IoBridge.java:545) at libcore.io.IoBridge.recvfrom(IoBridge.java:509) at java.net.PlainSocketImpl.read(PlainSocketImpl.java:488) at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:46) at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:240) at java.io.InputStreamReader.read(InputStreamReader.java:233) at java.io.BufferedReader.fillBuf(BufferedReader.java:145) at java.io.BufferedReader.readLine(BufferedReader.java:397)
我认为这与内存管理有关,但我的应用程序确实依赖于此服务,TCP客户端不能轻易丢失连接。它应该通过广播接收器报告来电。该服务以STICKY
开始。日志文件表示正在记录呼叫。可能是这个问题的根源?每一个帮助都表示赞赏。