Android Socket 编程
2015-10-11 20:39
211 查看
Socket 编程:
1.what is Socket
网络通信的一种接口
统称:套接字
用于描述IP地址和端口,是一个通信链的句柄。
应用程序通过 “套接字” 向 网络发出请求或者应答网络请求。
Socket 分为两部分:服务端 socket,和客户端socket
(UDP 协议 是 一次性将数据打包,进行发送,不对数据传输过程中 数据的丢失 负责
UDP 发送的数据 是有限的,传输速度比较快
)
(TCP 协议 发数据时要求接收方 ,返回一个回应,传输速度比较慢)
2.Socket 基本通信模型
3.使用基于TCP协议的Socket
服务端代码如下:
1.声明一个ServerSocket 对象,并让这个Socket 在指定端口监听
ServerSocket serverSocket = new ServerSocket(端口号);
2.调用ServerSocket 的accept()方法,接受客户端发送的请求
Socket socket = serverSocket.accept();
3.从Socket 中得到 InputStream 对象
InputStream inputStream = socket.getInputStream();
4.从inputStream 中读取客户端发送的数据。
byte[] buffer= new byte[1024*4];
int temp=0;
while(temp=inputstream.read(buffer)!=-1){
system.out.println(new String(buffer,0,temp));
}
客户端代码如下:
1. 创建Socket 连接
Socket socket = new Socket("ip address",端口号);
2.写入数据到 客户端到outputStream中 通过socket 传输给 服务端。
//some codes simple。
4.使用基于UDP协议的Socket
UDP通信 方式:
服务端:
1.创建DatagramSocket 对象,并指定监听的端口号:
DatagramSocket socket = new DatagramSocket(端口号);
2. 创建空的 DatagramPacket 对象
byte data[]= new byte [1024];
DatagramPacket packet = new DatagramPacket(data,data.length);
3.使用receive方法 接收客户端所发送的数据,存放到DatagramSocket对象中。
socket.receive(packet);
客户端:
1.创建DatagramSocket 对象
DatagramSocket socket = new DatagramSocket(端口号);
2.创建一个InetAddress
InetAddress serverAddress= InetAddress.getByName(ip address);
3.创建 DatagramPacket 对象,并指定这个数据包点接收地址及端口号
4.调用Socket 对象的send 方法 ,发送数据。
1.what is Socket
网络通信的一种接口
统称:套接字
用于描述IP地址和端口,是一个通信链的句柄。
应用程序通过 “套接字” 向 网络发出请求或者应答网络请求。
Socket 分为两部分:服务端 socket,和客户端socket
(UDP 协议 是 一次性将数据打包,进行发送,不对数据传输过程中 数据的丢失 负责
UDP 发送的数据 是有限的,传输速度比较快
)
(TCP 协议 发数据时要求接收方 ,返回一个回应,传输速度比较慢)
2.Socket 基本通信模型
3.使用基于TCP协议的Socket
服务端代码如下:
1.声明一个ServerSocket 对象,并让这个Socket 在指定端口监听
ServerSocket serverSocket = new ServerSocket(端口号);
2.调用ServerSocket 的accept()方法,接受客户端发送的请求
Socket socket = serverSocket.accept();
3.从Socket 中得到 InputStream 对象
InputStream inputStream = socket.getInputStream();
4.从inputStream 中读取客户端发送的数据。
byte[] buffer= new byte[1024*4];
int temp=0;
while(temp=inputstream.read(buffer)!=-1){
system.out.println(new String(buffer,0,temp));
}
客户端代码如下:
1. 创建Socket 连接
Socket socket = new Socket("ip address",端口号);
2.写入数据到 客户端到outputStream中 通过socket 传输给 服务端。
//some codes simple。
4.使用基于UDP协议的Socket
UDP通信 方式:
服务端:
1.创建DatagramSocket 对象,并指定监听的端口号:
DatagramSocket socket = new DatagramSocket(端口号);
2. 创建空的 DatagramPacket 对象
byte data[]= new byte [1024];
DatagramPacket packet = new DatagramPacket(data,data.length);
3.使用receive方法 接收客户端所发送的数据,存放到DatagramSocket对象中。
socket.receive(packet);
客户端:
1.创建DatagramSocket 对象
DatagramSocket socket = new DatagramSocket(端口号);
2.创建一个InetAddress
InetAddress serverAddress= InetAddress.getByName(ip address);
3.创建 DatagramPacket 对象,并指定这个数据包点接收地址及端口号
4.调用Socket 对象的send 方法 ,发送数据。
相关文章推荐
- Android音频系统之AudioTrack(二)
- Android 传感器 (详解一)—— 简单介绍传感器的使用步骤
- Android音频系统之AudioTrack(一)
- Android 自定义系统对话框
- Android拍照后Bitmap内存溢出的解决办法
- Android~外部类监听器~实现Activity的跳转
- Android应用的四大基本组件介绍
- android学习之1:拍照保存图片
- Android 使用AsyncTaskLoader获取手机联系人
- Android 使用CursorLoader获取手机短信
- android上传图片(及普通参数)到服务器(j2ee后台服务器,ssh框架)
- Android 获取手机的联系人进行操作
- Android 操作软键盘
- Android 容器焦点设置 android:descendantFocusability
- Android数据存储方式之——Shareprefences
- Android按钮跳转页面
- Android Design ItemTouchHelper实现酷炫列表的移行和滑动删除效果
- Android中使用pull解析xml文件
- Android NotificationManager的简单使用
- Android客户端与PC服务器如何实现Socket通信