本文所对应的源码在:/html/app/wangluoliulan/2012/0818/76.html
Java Server源代码:

public class TCPDesktopServer implements Runnable{     public static final String SERVERIP = "192.168.0.149";    public static final int SERVERPORT = 51706;     public void run() {         try {             System.out.println("S: Connecting...");              ServerSocket serverSocket = new ServerSocket(SERVERPORT);             while (true) {                   Socket client = serverSocket.accept();                  System.out.println("S: Receiving...");                   try {                      BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));                      String str = in.readLine();                      System.out.println("S: Received: '" + str + "'");                    } catch(Exception e) {                        System.out.println("S: Error");                        e.printStackTrace();                    } finally {                        client.close();                        System.out.println("S: Done.");                    }              }          } catch (Exception e) {             System.out.println("S: Error");             e.printStackTrace();         }    }    public static void main (String a[]) {        Thread desktopServerThread = new Thread(new TCPDesktopServer());        desktopServerThread.start();    }}

对上边的源代码做一些介绍:
指定Server监听的端口和服务器IP地址。

public static final String SERVERIP = "192.168.0.149";public static final int SERVERPORT = 51706;

应用之前所指定的IP和Port创建一个ServerSocket对象。

ServerSocket serverSocket = new ServerSocket(SERVERPORT);

用于侦听和捕捉通过Socket连接的客户端。

Socket client = serverSocket.accept();

应用Socket创建BufferedReader对象,用于接收Socket Stream中的数据。

BufferedReader in = new BufferedReader(newInputStreamReader(client.getInputStream()));

Android Client源代码:

InetAddress serverAddr = InetAddress.getByName("192.168.0.149");//TCPServer.SERVERIPLog.d("TCP", "C: Connecting...");Socket socket = new Socket(serverAddr, 51706);String message = "AndroidRes,Where is my Pig (Android)?";try {    Log.d("TCP", "C: Sending: '" + message + "'");    PrintWriter out = new PrintWriter( new BufferedWriter( newOutputStreamWriter(socket.getOutputStream())),true);        out.println(message);} catch(Exception e) {        Log.e("TCP", "S: Error", e);} finally {    socket.close();}

对上边的源代码做一些介绍:
指定Server的IP地址。

InetAddress serverAddr = InetAddress.getByName("192.168.0.149");

应用Server的IP和端口建立Socket对象。

Socket socket = new Socket(serverAddr, 51706);

根据已经建立的Socket来创建PrintWriter,将信息通过这个对象来发送给Server,其中包含了三个部分:

OutputStreamWriterBufferedWriterPrintWriter
PrintWriter out = new PrintWriter( new BufferedWriter( newOutputStreamWriter(socket.getOutputStream())),true);

更多相关文章

  1. 类和 Json对象
  2. Android(安卓)命令行编译、打包生成apk文件
  3. Android中文API(144) —— JsonWriter
  4. Android之Handler用法总结
  5. android通过ksoap2对webservice的解析
  6. Android(安卓)View的介绍和使用
  7. Android中,把XML文件转换成Object对象的方法
  8. 打android的patch
  9. android 命令(adb shell)进入指定模拟器或设备

随机推荐

  1. Android如何根据当前显示配置匹配资源 la
  2. Android(安卓)Recovery模式
  3. Android——SpannableString实现带圆角标
  4. Android--EditText控件属性汇总
  5. ProgressBar的简单使用
  6. android 多线程 AsyncTask handler
  7. Android最全UI库合集
  8. 2020年 Android必会面试题
  9. android上opengl性能分析工具
  10. Android自动化测试初探(三): 架构实现