团队博客8

Android Socket编程

  网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket来自百度百科

  Socket也叫套接字,应用程序通过socket套接字向网络发出请求或者应答网络发来的请求,所以说socket是通信的基础,socket是支持TCP/IP协议的网络通信的基本操作单元,包含网络通信必需的5种信息:连接使用的协议、本地主机的IP地址、本地进程的协议端口、远程主机的IP地址和园地进程的协议端口。

  对于android socket编程,使用的是java.net包下面提供的ServerSocketSocket类,其中ServerSocket类用来建立服务端程序,socket类用来建立客户端程序。

 

import java.net.Socket;

 

  Socket类的一些构造方法:

Socket(InetAddress dstAddress,int port,InetAddress localAddress,int localPort);
Socket(InetAddress address,int port,boolean stream);
Socket(SocketImpl impl);

  其中的dstAddress就是通信需要的IP地址,host是主机名,port是端口号,stream 指的是socket是流socket还是数据报socket,impl是socket的父类,既可以创建Socket,也可以创建ServerSocket。

   ServerSocket:

import java.net.ServerSocket;

  ServerSocket接收请求:

ServerSocket servers = new ServerSocket();
Socket socket = servers.accept();

  accept()是阻塞函数,当该方法被调用后,将等待客户的请求,直到有一个客户启动并请求连接到相同的端口port,然后accept()将返回一个相对应的Socket,此时,客户端和服务器端都建立了用于通信的Socket。

posted @ 2016-09-08 21:06  JYJe族  阅读(105)  评论(0编辑  收藏  举报