Android SocketTimeoutException异常分析
来源:互联网 发布:用c语言编写杨辉三角 编辑:程序博客网 时间:2024/06/14 02:58
环境说明
Eclipse
Android4.0
tcp client客户端程序
问题描述
在进行Android socket tcp通信开发的过程中碰到了下述异常,具体logcat错误如下:
10-29 03:16:16.710: I/recv timeout(7476): java.net.SocketTimeoutException10-29 03:16:16.710: I/recv timeout(7476): at java.net.PlainSocketImpl.read(PlainSocketImpl.java:491)10-29 03:16:16.710: I/recv timeout(7476): at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:46)10-29 03:16:16.710: I/recv timeout(7476): at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:240)10-29 03:16:16.710: I/recv timeout(7476): at java.io.DataInputStream.read(DataInputStream.java:63)10-29 03:16:16.710: I/recv timeout(7476): at java.io.InputStream.read(InputStream.java:162)10-29 03:16:16.710: I/recv timeout(7476): at java.io.DataInputStream.read(DataInputStream.java:59)
两个怀疑出现该异常的可能情况
- 自己写的socket程序存在问题,如接收超时时间太短等情况可能发生
- 服务端程序可能出现了异常不进行回复
分析过程
反复检查自己的client程序发现client端并没有任何异常设置代码,那么如何证明不是client端的问题而是server端出现了异常呢?
简单说下自己抓包分析得出server端异常的过程:
- 对手机进行root处理
- 按照网上抓包流程提供的tcpdump抓包过程分析
- 将抓包数据使用wireshark进行分析
- 在wireshark过滤规则部分输入对应规则进行过滤
- 分析tcp数据包通信流程,查看是未发送成功还是服务端是否返回
参考资料
- wireshark使用参考视频
http://edu.51cto.com/lesson/id-62643.html - tcpdump抓包使用过程
http://www.cnblogs.com/rootq/archive/2012/04/08/2438262.html
0 0
- Android SocketTimeoutException异常分析
- Android SocketTimeoutException异常分析
- Android真机调试异常java.net.SocketTimeoutException
- Android异常总结--- java.net.SocketTimeoutException: Transport endpoint is not connected
- SocketTimeoutException
- java.net.sockettimeoutexception read timed out 异常
- android 异常分析
- Android异常问题分析
- Android 异常问题分析
- android OOM异常分析
- Android 异常问题分析
- Android异常分析(转)
- Android异常分析
- Android 异常问题分析
- java.net.SocketTimeoutException: Read timed out 异常解决办法
- android 程序内部sockettimeoutexception 对于android模拟器 的影响
- android sqlite 几个异常分析
- Android常见异常分析ThreadException
- nodejs 使用net模块进行tcp通讯示例
- Android 4.4文件管理器免ROOT破除外置SD卡限制
- 运用有道api接口写一个小翻译(简单版)
- 远程调试助手
- SqlServer express 2005 导入 excel表的SQL语句
- Android SocketTimeoutException异常分析
- ELK基础环境搭建-kibana配置
- 教程: CodeIgniter 整合 UCenter 全攻略
- 利用Handler实现Activity和Service之间通信
- Java-Map排序
- Android五大布局
- Linux使用fdisk进行磁盘管理
- setInterval();与setTimeout();的结合用法【js】
- jiffies溢出与时间先后比较-time_after,time_before