Android编程之客户端通过socket与服务器通信的方法

2019-12-10 19:51:35刘景俊
易采站长站为您分析Android编程之客户端通过socket与服务器通信的方法,结合实例形式分析了Android基于socket通讯的具体步骤与相关使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下    

本文实例讲述了Android编程之客户端通过socket与服务器通信的方法。,具体如下:

下面是一个demo,Android客户端通过socket与服务器通信。

由于Android里面可以完全使用java.io.*包和java.net.*包,那么,实际上,逻辑部分与J2SE没有区别。只是UI代码不一样。

Android客户端通过socket与服务器通信分为下面5步:

(1)通过IP地址和端口实例化Socket,请求连接服务器;

复制代码 socket = new Socket("10.14.114.127",54321); //IP:10.14.114.127,端口54321
(2)获取Socket流以进行读写,并把流包装进BufferWriter或者PrintWriter
复制代码 PrintWriter out = new PrintWriter( new BufferedWriter( new OutputStreamWriter(socket.getOutputStream())),true);
这里涉及了三个类:socket.getOutputStream得到socket的输出字节流,OutputStreamWriter是字节流向字符流转换的桥梁,BufferWriter是字符流,然后再包装进PrintWriter。

 

(3)对Socket进行读写

复制代码 out.println(message);
(4)关闭打开的流
复制代码 out.close();
完整工程代码如下:
  1. package com.yarin.android.Examples_08_04;   import java.io.BufferedReader;  
  2. import java.io.BufferedWriter;   import java.io.InputStreamReader;  
  3. import java.io.OutputStreamWriter;   import java.io.PrintWriter;  
  4. import java.net.Socket;   import android.app.Activity;  
  5. import android.os.Bundle;   import android.util.Log;  
  6. import android.view.View;   import android.view.View.OnClickListener;  
  7. import android.widget.Button;   import android.widget.EditText;  
  8. import android.widget.TextView;   public class Activity01 extends Activity  
  9. {     private final String    DEBUG_TAG  = "Activity01";