Android开发Socket程序要点

来源:互联网 发布:淘宝网开书店 编辑:程序博客网 时间:2024/05/20 02:27

因项目需要实现Android手机控制照明电路的开关(智能家居——照明管理),采用Socket实现TCP Client功能。TCP服务器端使用RCC6008智能控制器,该控制器输入输出各8路,端口为8800。总结在开发中的要点如下:

1、创建连接:

      try{

      Socket client = new Socket();
      client.connect(new InetSocketAddress(rcc6008.getIp(),rcc6008.getPort()),200);

      } catch (SocketTimeoutException e) {
      return null;
     } catch (IOException e) {
      return null;
     }catch(Exception e) {
      return null;
     } 

     需要注意的是在这里使用client.connect(ip,port,timeout)方法,而非

     client = new Socket(ip,port)

     或

     client = new Socket();

     client.setSoTimeout(200);

     client.connect(...);

     原因:使用client.connect(ip,port,timeout) 中的timeout是连接超时时间,而后两种则是socket超时时间,两者的响应速度差别超级大,前者响应迅速,便于超时错误捕获。

原创粉丝点击