sufe_hung 2015-05-19 16:12 采纳率: 0%
浏览 4076

Android Socket发送数据遇到的奇怪问题

向各位大虾求救!!!
写一段简单的Android网络通讯程序,发现总是发送数据发了100上下字节(每次8个字节),然后就发不出去了,但是也没有任何异常抛出,检查所有状态都正常。
有谁知道这可能是什么情况?

连接代码是这样的:
mSocket=new Socket(mStrIP, mPort);
mSocket.setTcpNoDelay(true); // disable Nagle algorithm
mSocket.setKeepAlive(true);
mInputStream=mSocket.getInputStream();
mOutputStream = mSocket.getOutputStream();

数据发送代码。(所有错误日志都没有打印出来)
if (socket.isOutputShutdown()) Log.e(TAG, "Output is Shutdown");
if (socket.isInputShutdown()) Log.e(TAG, "Input is Shutdown");
if (socket.isClosed()) Log.e(TAG, "Socket is closed");
if (!socket.isConnected()) Log.e(TAG, "Socket is disconnected");
mOutputStream.write(data);
mOutputStream.flush();

建立网络连接和发送数据都是在同一个后台服务的子线程通过handle的形式处理。
网络环境就是WiFi

  • 写回答

5条回答 默认 最新

  • 91program 博客专家认证 2015-05-19 23:25
    关注

    1 先判断一下出现问题时,网络的状态是否正常?
    2 如果正常,服务器端是否运行正常。如果你连接的后台服务异常了,也会导致终端掉线
    3 最后,判断终端的 Socket 连接状态是否正常。其实,直接判断这个就可以了,前面两个只是想知道 Socket 掉线的原因。

    评论

报告相同问题?

悬赏问题

  • ¥15 fluent的在模拟压强时使用希望得到一些建议
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退