Client code:
Java code
Package com.yarin.android.Examples_08_04; Import Java.io.BufferedReader; Import Java.io.BufferedWriter; Import Java.io.InputStreamReader; Import Java.io.OutputStreamWriter; Import Java.io.PrintWriter; Import java.net.InetAddress; Import Java.net.Socket; Import android.app.Activity; Import Android.os.Bundle; Import Android.util.Log; Import Android.view.View; Import Android.view.View.OnClickListener; Import Android.widget.Button; Import Android.widget.EditText; Import Android.widget.TextView; public class Activity01 extends Activity {private final String Debug_tag = "Activity01"; Private TextView Mtextview=null; Private EditText Medittext=null; Private Button Mbutton=null; @Override public void OnCreate (Bundle savedinstancestate) {super.oncreate (savedinstancestate); Setcontentview (R.layout.main); Mbutton = (Button) Findviewbyid (R.ID.BUTTON01); MTextview= (TextView) Findviewbyid (R.ID.TEXTVIEW01); medittext= (EditText) Findviewbyid (r.id.edittext01); Login Mbutton.setonclicklistener (new Onclicklistener () {public void OnClick (View v) {SOCKET socket = NULL; String message = Medittext.gettext (). toString () + "\ r \ n"; try {//create socket SOCKET = new Socket ("116.29.27.138", 5554); View native IP, each boot is different//socket=new socket ("192.168.1.110", 50000); Sends a message to the server printwriter out = new PrintWriter (new BufferedWriter (New OutputStreamWriter (Socket.getou Tputstream ())), true); OUT.PRINTLN (message); Receive messages from the server BufferedReader br = new BufferedReader (New InputStreamReader (Socket.getinputstream ())); StRing msg = Br.readline (); if (msg! = null) {Mtextview.settext (msg); } else {mtextview.settext ("Data Error!"); }//Close stream out.close (); Br.close (); Close socket Socket.close (); } catch (Exception e) {//Todo:handle Exception LOG.E (Debug_tag, e.tostring ()); } } }); }} Import Java.io.bufferedreader;import Java.io.bufferedwriter;import Java.io.inputstreamreader;import Java.io.outputstreamwriter;import Java.io.printwriter;import Java.net.inetaddress;import Java.net.Socket;import Android.app.activity;import Android.os.bundle;import Android.util.log;import andRoid.view.view;import Android.view.view.onclicklistener;import Android.widget.button;import Android.widget.edittext;import Android.widget.TextView; public class Activity01 extends Activity{private final String debug_tag = "Activity01"; private TextView MTEXTVIEW=NULL;PR Ivate EditText medittext=null;private Button mbutton=null; @Overridepublic void OnCreate (Bundle savedinstancestate) {super.oncreate (savedinstancestate); Setcontentview ( R.layout.main); Mbutton = (Button) Findviewbyid (R.id.button01); mtextview= (TextView) Findviewbyid (r.id.textview01); medittext= ( EditText) Findviewbyid (r.id.edittext01); Login Mbutton.setonclicklistener (new Onclicklistener () {public void OnClick (View v) {socket socket = NULL; String message = Medittext.gettext (). toString () + "\ r \ n"; try{//Create Socketsocket = new Socket ("116.29.27.138", 5554);// View the native IP, each boot is different//socket=new socket ("192.168.1.110", 50000);//Send message to server printwriter out = new PrintWriter (new BufferedWriter (New OutputStreamWriter (Socket.getoutputstream ())), true); OUT.PRINTLN (message); Receive messages from the server BufferedReader br = new BufferedReader (New InputStreamReader (Socket.getinputstream ())); String msg = Br.readline (); if (msg! = null) {Mtextview.settext (msg);} Else{mtextview.settext ("Data Error!");} Close stream Out.close (); Br.close ();//close Socketsocket.close ();} catch (Exception e) {//Todo:handle exceptionlog.e (Debug_tag, e.tostring ());}});}} Server-side code: Java code Package com.yarin.android.Examples_08_04; Import Java.io.BufferedReader; Import Java.io.BufferedWriter; Import Java.io.InputStreamReader; Import Java.io.OutputStreamWriter; Import Java.io.PrintWriter; Import Java.net.ServerSocket; Import Java.net.Socket; public class Server implements Runnable {public void run () {try {//Create SERVERSOC Ket ServerSocket serversocket = new ServerSocket (5554); while (true) {//accepts client requests for Socket clients = serversocket.accept (); System.out.println ("ACcept "); try {//Receive client message BufferedReader in = new BufferedReader (New Input StreamReader (Client.getinputstream ())); String str = in.readline (); System.out.println ("read:" + str); Sends a message to the server printwriter out = new PrintWriter (new BufferedWriter (New OutputStreamWriter (Client.getou Tputstream ())), true); OUT.PRINTLN ("Server Message"); Close flow out.close (); In.close (); } catch (Exception e) {System.out.println (E.getmessage ()); E.printstacktrace (); } finally {//close client.close (); System.out.println ("close"); } } } catch (Exception e) {System.out.println (E.getmessage ()); }}//main function, open server public static void main (String a[]) {Thread desktopserverthread = new THR EAD (New Server ()); Desktopserverthread.start (); } }
One of the ways Android communicates with the server (TCP) high efficiency and security