Hi,

Your server is up at 10.0.2.15 and the client try to connect to
10.0.2.2 ?

On 11 nov, 17:49, Mike88 <michael...@gmail.com> wrote:
> Hello, I have created a simple server and client both on android phone
> or emulators. The code is as follows
>
> Server:
>
> import java.io.BufferedReader;
> import java.io.InputStreamReader;
> import java.net.ServerSocket;
> import java.net.Socket;
>
> import android.app.Activity;
> import android.os.Bundle;
> import android.util.Log;
> import android.widget.TextView;
>
> public classAndroidServerextends Activity {
>     /** Called when the activity is first created. */
>         public static TextView tv;
>     @Override
>     public void onCreate(Bundle savedInstanceState) {
>         super.onCreate(savedInstanceState);
> //        setContentView(R.layout.main);
>
>         tv = new TextView(this);
>         tv.setText("Main - server");
>         setContentView(tv);
>
>         Thread sThread = new Thread(new TCPServerTest());
>
>         sThread.start();
>     }
>
> }
>
> class TCPServerTest implements Runnable{
>
>     public static final String SERVERIP = "10.0.2.15";
>     public static final int SERVERPORT = 4444;
>
>     public void run() {
>          try {
>               Log.d("TCP", "S: Connecting...");
>
>               ServerSocket serverSocket = new ServerSocket
> (SERVERPORT);
>               while (true) {
>                  Socket client = serverSocket.accept();
>                  Log.d("TCP", "S: Receiving...");
>                  try {
>                       BufferedReader in = new BufferedReader(new
> InputStreamReader(client.getInputStream()));
>                       String str = in.readLine();
>                       Log.d("TCP", "S: Received: '" + str + "'");
>                      AndroidServer.tv.setText(str + " ------ " +
> SERVERIP);
>                     } catch(Exception e) {
>                         Log.e("TCP", "S: Error", e);
>                     } finally {
>                          client.close();
>                          Log.d("TCP", "S: Done.");
>                     }
>
>               }
>
>          } catch (Exception e) {
>            Log.e("TCP", "S: Error", e);
>          }
>     }
>
> }
>
> Client:
>
> import java.io.BufferedWriter;
> 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.widget.TextView;
>
> public class AndroidClient extends Activity {
>     /** Called when the activity is first created. */
>         public TextView tv;
>     @Override
>     public void onCreate(Bundle savedInstanceState) {
>         super.onCreate(savedInstanceState);
> //        setContentView(R.layout.main);
>
>         tv = new TextView(this);
>         tv.setText("Main - client");
>         setContentView(tv);
>
>         Thread cThread = new Thread(new TCPClientTest());
>
>         cThread.start();
>     }
>
> }
>
> class TCPClientTest implements Runnable {
>
>     public void run() {
>          try {
>
>            InetAddress serverAddr = InetAddress.getByName("10.0.2.2");
>
>            Log.d("TCP", "C: Connecting...");
>            Socket socket = new Socket(serverAddr, 5555);
>            String message = "Hello from Client";
>                try {
>                 Log.d("TCP", "C: Sending: '" + message + "'");
>                 PrintWriter out = new PrintWriter( new BufferedWriter
> ( new OutputStreamWriter(socket.getOutputStream())),true);
>
>                 out.println(message);
>                 Log.d("TCP", "C: Sent.");
>                   Log.d("TCP", "C: Done.");
>
>              } catch(Exception e) {
>                  Log.e("TCP", "S: Error", e);
>                 } finally {
>                   socket.close();
>                 }
>          } catch (Exception e) {
>               Log.e("TCP", "C: Error", e);
>          }
>     }
>
> }
>
> The problem can be seen from the log files
>
> Server:
>
> D/TCP     (  700): S: Connecting...
>
> Clinet:
>
> D/TCP     (  703): C: Connecting...
> D/TCP     (  703): C: Sending: 'Hello from Client'
> I/global  (  703): Default buffer size used in BufferedWriter
> constructor. It would be better to be explicit if an 8k-char buffer is
> required.
> D/TCP     (  703): C: Sent.
> D/TCP     (  703): C: Done.
>
> Note when i run the program the server has id 5554 and the client id
> 5556 from the emulators.
>
> I have used ./adb -s 5554 forward tcp:4444 tcp:5555
>
> However the client message fails to send to the server. Does anyone
> have any idea why?
>
> I have tried doing  ./adb -s 5556 forward tcp:5555 tcp:4444 in case
> that was the problem but i had no luck.
>
> Help would be very much appreciated.

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to