我正在开发和android应用程序,通过套接字与服务器进行通信。我有一个线程读取套接字,而主线程执行Asynk Task
,它通过相同的套接字发送消息。这里的问题是,有些时候(比如说50%的次数)我称之为套接字连接的OutputStream.write()
方法,服务器日志显示客户端关闭了连接。我读到java套接字是全双工的,这应该允许我通过相同的套接字发送和接收消息而没有任何问题。那么,为什么会发生这种情况?应用程序是否存在问题?或者它是服务器端代码(我没有访问)关闭连接的那个?为什么OutputStream.write()关闭套接字连接?
编辑:服务器是一个raspberry分布,运行只有一个java应用程序是一个与我的应用程序通信的树莓派。我无法访问运行在服务器上的Java代码或服务器显示的任何日志,我只能访问连接到服务器的屏幕,该屏幕会打印代码“告诉”它打印的消息。当我执行OutputStram.Write()时,服务器在屏幕上显示:“连接到客户端关闭”。
非常感谢!
你有什么异常?它应该在你的Android日志中。 – Gray
我怀疑服务器已关闭连接。 – Gray
“服务器日志显示客户端已关闭连接”:不,它不。 *显示*我们日志真正包含的内容。 – EJP