android4.0关于socket问题
Socket socket = new Socket();
socket.connect(new InetSocketAddress(ConstData.TCP_IP,
                    ConstData.TCP_PORT), 2000);
通不过去,直接异常处理,这是因为android 3.0+以上 已经不建议在activity中添加耗时操作,要界面和数据脱离。4.0以上的通信都必须放到线程里去做 不能在UI线程。

解决办法,另起线程或Service处理socket。
如果一定要想在UI线程操作,添加如下代码:
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
                .detectDiskReads().detectDiskWrites().detectNetwork()
                .penaltyLog().build());
        StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
                .detectLeakedSqlLiteObjects().penaltyLog().penaltyDeath()
                .build());
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/oMartin1/article/details/46787303
个人分类: Android
想对作者说点什么? 我来说一句

android socket面试文档

2012年10月15日 10KB 下载

SOCKET三大通讯问题

2013年03月12日 7KB 下载

没有更多推荐了,返回首页

不良信息举报

android4.0关于socket问题

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭