最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Android的Socket通讯编程实例代码
时间:2013-10-31 编辑:简简单单 来源:一聚教程网
android客户端通过socket与服务器进行通信可以分为以下几步:
应用程序与服务器通信可以采用两种模式:TCP可靠通信 和UDP不可靠通信。
(1)通过IP地址和端口实例化Socket,请求连接服务器:
代码如下 | 复制代码 |
socket = new Socket(HOST, PORT); //host:为服务器的IP地址 port:为服务器的端口号 |
(2)获取Socket流以进行读写,并把流包装进BufferWriter或者PrintWriter:
代码如下 | 复制代码 |
PrintWriter out = new PrintWriter( new BufferedWriter( new OutputStreamWriter(socket.getOutputStream())),true); |
这里涉及了三个类:socket.getOutputStream得到socket的输出字节流,OutputStreamWriter是字节流向字符流转换的桥梁,BufferWriter是字符流,然后再包装进PrintWriter。
(3)对Socket进行读写
代码如下 | 复制代码 |
if (socket.isConnected()) { |
(4)关闭打开的流
代码如下 | 复制代码 |
out.close(); |
下面简单演示与Android如何实现套接字的通信:
服务器程序
服务器程序需要在PC上运行,该程序比较的简单,因此不需要建立Android项目,直接定义一个JAVA类,并且运行该类即可。它仅仅建立ServerSocket监听,并使用Socket获取输入输出流。
代码如下 | 复制代码 |
import java.io.IOException; public class SimpleServer { /** //创建一个ServerSocket,用于监听客户端socket的连接请求 }} |
客户端程序
代码如下 | 复制代码 |
package my.learn.tcp; import java.io.BufferedReader; import android.app.Activity; public class SimpleClient extends Activity { @Override try { Socket socket = new Socket("自己计算机的IP地址", 30000); show.setText("来自服务器的数据:"+line); br.close(); } catch (UnknownHostException e) { |
另外,在Manifest.xml文件当中,需要对互联网的访问进行授权:
代码如下 | 复制代码 |
|
在写代码的过程中一定要注意对socket 输入流 输出流的关闭
相关文章
- Android编程之交互对话框实例浅析 06-26
- android判断设备是否有相机的实例代码 06-14
- Android清空编辑框内容功能的实现实例代码 06-12
- android ViewPager实现滑动翻页效果实例代码 06-10
- Android 广播监听网络状态详解及实例代码 05-03
- Android ToolBar整合实例使用方法详解 04-11