[SOLUCIONADO] ¿Cómo recibir y mandar datos desde Android a la PC c/programación?

  • 5 Respuestas
  • 4681 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado proxy_lainux

  • *
  • Underc0der
  • Mensajes: 128
  • Actividad:
    0%
  • Reputación 0
  • belial grimoire
    • Ver Perfil
hola

Estoy tratando de crear un cliente-servidor entre un celular android y linux en PC, ya logré hacer la conexión, puedo mandar y recibir datos o en este caso, "cadenas de texto", tal vez estoy muy acostumbrado a C, pero como recordaran, con una conexión ya realizada se puede empezar a comunicar los sockets.

Bueno, ya logre esa comunicación, pero no se si funcione de la misma manera con Java, hasta el momento hago la conexión y mando un "hola" de android a la PC, y después mando alguna frase de la PC a android, pero aquí viene mi problema.

Al principio había dejado un botón y un textview para ver si se estaba realizando la conexión y la información se mandaba correctamente, y todo va bien, oprimo el botón para mandar un string desde android a la PC y después puedo volver a recibir otra cadena de caracteres desde la compu hacia android, etc, el clásico recv y send.

Pero como mencioné, tengo que oprimir un botón para poder mandar datos constantemente desde android a la PC y asi lograr mandar datos desde la PC a android nuevamente, y me gustaría poder mandar y recibir datos sin tener que oprimir nada en el celular.

Por ejemplo, me gustaría que cuando la aplicación en andriod se inicie, me mande una frase de "conexion aceptada", después yo mandar un frase de "hola", y android me mande otra cosa y así continuamente hasta que se termine la conexión. Para eso necesito saber como mantener la conexión activa y android reciba y mande información sin oprimir algo.

Traté de quitar el listener del botón y poner el socket en onCreate directamente, pero se detiene la aplicación, lo que quiere decir que así no funciona, ¿alguien me podría decir como realizar esa función, mantener la conexión activa y poder interactuar automáticamente con android?

Les dejo el código que encontré, lo he estado estudiando y modificando varias cosas para entender las cosas. A ver si me pueden explicar como realizar lo que necesito o como podría hacerlo de otra manera

Código: Java
  1. package com.clint;
  2.  
  3. import java.io.DataInputStream;
  4. import java.io.DataOutputStream;
  5. import java.io.IOException;
  6. import java.net.Socket;
  7. import java.net.UnknownHostException;
  8.  
  9. import android.support.v7.app.ActionBarActivity;
  10. import android.os.Bundle;
  11. import android.os.StrictMode;
  12. import android.view.View;
  13. import android.widget.Button;
  14. import android.widget.EditText;
  15. import android.widget.TextView;
  16.  
  17. public class MainActivity extends ActionBarActivity {
  18.    
  19.    EditText textOut;
  20.    TextView textIn;
  21.  
  22.    @Override
  23.    protected void onCreate(Bundle savedInstanceState) {
  24.       super.onCreate(savedInstanceState);
  25.       setContentView(R.layout.activity_main);
  26.      
  27.       textOut = (EditText)findViewById(R.id.textout);
  28.         Button buttonSend = (Button)findViewById(R.id.send);
  29.         textIn = (TextView)findViewById(R.id.textin);
  30.         buttonSend.setOnClickListener(buttonSendOnClickListener);
  31.    }
  32.  
  33.    Button.OnClickListener buttonSendOnClickListener = new Button.OnClickListener(){
  34.  
  35.       @Override
  36.       public void onClick(View arg0) {
  37.        // TODO Auto-generated method stub
  38.        Socket socket = null;
  39.        DataOutputStream dataOutputStream = null;
  40.        DataInputStream dataInputStream = null;
  41.  
  42.        try {
  43.         socket = new Socket("192.168.0.17", 8888);
  44.         dataOutputStream = new DataOutputStream(socket.getOutputStream());
  45.         dataInputStream = new DataInputStream(socket.getInputStream());
  46.         dataOutputStream.writeUTF("hola");
  47.         textIn.setText(dataInputStream.readUTF());
  48.        } catch (UnknownHostException e) {
  49.         // TODO Auto-generated catch block
  50.         e.printStackTrace();
  51.        } catch (IOException e) {
  52.         // TODO Auto-generated catch block
  53.         e.printStackTrace();
  54.        }
  55.        finally{
  56.         if (socket != null){
  57.          try {
  58.           socket.close();
  59.          } catch (IOException e) {
  60.           // TODO Auto-generated catch block
  61.           e.printStackTrace();
  62.          }
  63.         }
  64.  
  65.         if (dataOutputStream != null){
  66.          try {
  67.           dataOutputStream.close();
  68.          } catch (IOException e) {
  69.           // TODO Auto-generated catch block
  70.           e.printStackTrace();
  71.          }
  72.         }
  73.  
  74.         if (dataInputStream != null){
  75.          try {
  76.           dataInputStream.close();
  77.          } catch (IOException e) {
  78.           // TODO Auto-generated catch block
  79.           e.printStackTrace();
  80.          }
  81.         }
  82.        }
  83.       }};
  84.       }
  85.  
« Última modificación: Febrero 12, 2015, 04:10:03 am por Gabriela »

Desconectado WhiZ

  • *
  • Ex-Staff
  • *****
  • Mensajes: 395
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
Lo primero que haría es crear un sistema cliente-servidor. En el servidor creas un socket que se quede a la espera del cliente. Cuando el cliente se conecte creas un thread para esa comunicación y, por medio de un bucle la mantenes hasta que un evento determinado lo finalice.

Saludos!
WhiZ
« Última modificación: Enero 03, 2015, 12:59:32 am por WhiZ »


Desconectado proxy_lainux

  • *
  • Underc0der
  • Mensajes: 128
  • Actividad:
    0%
  • Reputación 0
  • belial grimoire
    • Ver Perfil
pues la conexion ya la tengo, la hago mediante un socket en java en la consola de linux, y en android la aplicación ya se establece y puedo mantener el intercambio de datos, lo que no entiendo es como realizar eso de forma automatica, me imagino que es como dices con algun hilo, pero no entiendo como.

pondré un ejemplo en C sobre lo que busco

en código se utiliza un ciclo en este caso un while en el cliente y servidor

Código: C
  1. whie(1){
  2.  
  3. send(socket, "frase", tamaño, 0);
  4.  
  5. recv(socket, buffer, espacio, 0);
  6.  
  7. printf("%s", buffer);
  8.  
  9. }

ahora uno del servidor

Código: C
  1. while(1){
  2.  
  3. recv(socket, buffer, espacio, 0);
  4.  
  5. if(strcmp(buffer, "whoami"){
  6.  
  7. send(socket, "android", tamaño,0);
  8. }
  9.  
  10. }


Esto que escribí es muy tonto, así que no lo traten de decifrar o arreglar jeje.

pero es un ejemplo de lo que quisiera hacer, decirle desde linux un comando o funcion a realizar, android al recibirlo haga lo que le pido, y mande el resultado de nuevo a linux.

Como pueden ver en el código de android, puedo hacerlo, siempre y cuando oprima un boton, y quisiera dejarlo sin eso... ¿como lo harían?

Desconectado WhiZ

  • *
  • Ex-Staff
  • *****
  • Mensajes: 395
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
Acá te dejo un simple sistema cliente-servidor.

SERVER
Código: Java
  1. /* Server */
  2. import java.net.*;
  3. import java.io.*;
  4.  
  5. class Server {
  6.     public static void main(String[] args) {
  7.         System.out.println(" <ul class="bbc_list"><li type="disc"> Running server...");[/li][/list]
  8.         ServerSocket server;
  9.         int port = 2236;
  10.  
  11.         try {
  12.             server = new ServerSocket(port);
  13.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  14.  
  15.             System.out.println(" </li><li type="disc"> Waiting for clients on port " + server.getLocalPort());[/li][/list]
  16.             Socket sock = server.accept();
  17.             System.out.println(" </li><li type="square"> New client: " + sock.getRemoteSocketAddress());[/li][/list]
  18.  
  19.             DataInputStream input = new DataInputStream(sock.getInputStream());
  20.             System.out.println(" </li><li type="disc"> Receiving data..." + input.readUTF());[/li][/list]
  21.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  22.  
  23.             DataOutputStream output = new DataOutputStream(sock.getOutputStream());
  24.             System.out.println(" </li><li type="disc"> Sending data...");[/li][/list]
  25.             output.writeUTF("Visit and join us at http://underc0de.org <img src="https://underc0de.org/foro/Smileys/default/wink.gif" alt=";&#41;" title="Guiñar" class="smiley" />");
  26.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  27.  
  28.             sock.close();
  29.         }
  30.         catch (IOException e) {
  31.             System.out.println(" [!] Error: " + e);
  32.         }
  33.     }
  34. }

CLIENT
Código: Java
  1. /* Client */
  2.  
  3. import java.net.*;
  4. import java.io.*;
  5.  
  6. class Client {
  7.     public static void main(String[] args) {
  8.         String server = "127.0.0.1";
  9.         int port = 2236;
  10.         System.out.println(" </li><li type="disc"> Connecting to the server [" + server + ":" + port + "]");[/li][/list]
  11.  
  12.         try {
  13.             Socket client = new Socket(server, port);
  14.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  15.  
  16.             DataOutputStream output = new DataOutputStream(client.getOutputStream());
  17.             System.out.println(" </li><li type="disc"> Sending data...");[/li][/list]
  18.             output.writeUTF("Hello!");
  19.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  20.  
  21.             DataInputStream input = new DataInputStream(client.getInputStream());
  22.             System.out.println(" </li><li type="disc"> Receiving data..." + input.readUTF());[/li][/list]
  23.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  24.  
  25.             client.close();
  26.         }
  27.         catch (IOException e) {
  28.             System.out.println(" [!] Error: " + e);
  29.         }
  30.     }
  31. }

Con esto ya tenés un servidor que espera, automáticamente (me refiero, sin botones o cualquier otro evento), una conexión entrante.
En un rato subo el código con el bucle que te comentaba antes para lograr una interacción más dinámica.

Espero que esto te sirva de base para continuar.

Saludos!
WhiZ



EDITO: Ahora sí. Esta sería una versión más avanzada, con un bucle en el server que espera conexiones entrantes. Una vez iniciada una nueva conexión, se la pasa a la clase ThreadServerHandler quién se encarga del resto. El cliente sigue igual.

SERVER
Código: Java
  1. /* Server */
  2. import java.net.*;
  3. import java.io.*;
  4.  
  5. class Server {
  6.     public static void main(String[] args) {
  7.         System.out.println(" </li><li type="disc"> Running server...");[/li][/list]
  8.         ServerSocket server;
  9.         int port = 2236;
  10.  
  11.         try {
  12.             server = new ServerSocket(port);
  13.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  14.  
  15.             while (true) {
  16.                 System.out.println(" </li><li type="disc"> Waiting for clients on port " + server.getLocalPort());[/li][/list]
  17.                 Socket sock = server.accept();
  18.  
  19.                 Thread t = new ThreadServerHandler(sock);
  20.                 t.start();
  21.             }
  22.  
  23.         } catch(SocketTimeoutException e) {
  24.             System.out.println(" [!] Error: " + e);
  25.  
  26.         } catch (IOException e) {
  27.             System.out.println(" [!] Error: " + e);
  28.         }
  29.     }
  30. }
  31.  
  32. class ThreadServerHandler extends Thread {
  33.     private Socket sock = null;
  34.  
  35.     public ThreadServerHandler(Socket sock) {
  36.         super("ThreadServerHandler");
  37.         this.sock = sock;
  38.     }
  39.  
  40.     public void run() {
  41.         try {
  42.             System.out.println(" </li><li type="square"> New client: " + sock.getRemoteSocketAddress());[/li][/list]
  43.  
  44.             DataInputStream input = new DataInputStream(sock.getInputStream());
  45.             System.out.println(" </li><li type="disc"> Receiving data..." + input.readUTF());[/li][/list]
  46.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  47.  
  48.             DataOutputStream output = new DataOutputStream(sock.getOutputStream());
  49.             System.out.println(" </li><li type="disc"> Sending data...");[/li][/list]
  50.             output.writeUTF("Visit and join us at http://underc0de.org <img src="https://underc0de.org/foro/Smileys/default/wink.gif" alt=";&#41;" title="Guiñar" class="smiley" />");
  51.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  52.  
  53.             sock.close();
  54.         }
  55.         catch (IOException e) {
  56.             System.out.println(" [!] Error: " + e);
  57.         }
  58.     }
  59. }

Lo que tendrías que hacer ahora es modificar la clase ThreadServerHandler: poner un bucle que reciba y envíe información hasta que por medio de un evento determinado, finalice la conexión. Los cambios que hagas en dicha clase deberán acompañarse de las modificaciones respectivas en el cliente.

Espero que te sirva!

Saludos!
WhiZ

P.D.: Seguro que más tarde subo un nuevo código, así practico un poco de java jeje
« Última modificación: Enero 03, 2015, 11:54:40 am por WhiZ »


Desconectado proxy_lainux

  • *
  • Underc0der
  • Mensajes: 128
  • Actividad:
    0%
  • Reputación 0
  • belial grimoire
    • Ver Perfil
Gracias, ya estoy comprendiendo... llevo poco tiempo en Java así que tendré que revisarlo para practicar, porque yo había hecho un cliente pero bastante desordenado jeje

Muchas gracias nuevamente, ya solo falta ver como lo integro en Android para hacer lo que mencionas, estuve googleando sobre los hilos y con tu ejemplo ya comprendí sobre Run, ya solo me falta leer bastante la documentación de oracle porque si me falta por aprender cosas de Java.

Ojala sigas subiendo más cosas, les entiendo mejor jeje

Saludos.

Desconectado WhiZ

  • *
  • Ex-Staff
  • *****
  • Mensajes: 395
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
Bueno, acá te dejo una de las últimas versiones (mis conocimientos en java no dan para mucho más jeje).

SERVER
Código: Java
  1. /* Server */
  2. import java.net.*;
  3. import java.io.*;
  4.  
  5. class Server {
  6.     public static void main(String[] args) {
  7.         System.out.println(" <ul class="bbc_list"><li type="disc"> Running server...");[/li][/list]
  8.         ServerSocket server;
  9.         int port = 2236;
  10.  
  11.         try {
  12.             server = new ServerSocket(port);
  13.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  14.             System.out.println(" </li><li type="disc"> Waiting for clients on port " + server.getLocalPort());[/li][/list]
  15.  
  16.             while (true) {
  17.                 Socket sock = server.accept();
  18.  
  19.                 Thread t = new ThreadServerHandler(sock);
  20.                 t.start();
  21.             }
  22.  
  23.         } catch(SocketTimeoutException e) {
  24.             System.out.println(" [!] Error: " + e);
  25.  
  26.         } catch (IOException e) {
  27.             System.out.println(" [!] Error: " + e);
  28.         }
  29.     }
  30. }
  31.  
  32. class ThreadServerHandler extends Thread {
  33.     private Socket sock = null;
  34.  
  35.     public ThreadServerHandler(Socket sock) {
  36.         super("ThreadServerHandler");
  37.         this.sock = sock;
  38.     }
  39.  
  40.     public void run() {
  41.         try {
  42.             System.out.println("\n </li><li type="square"> New client: " + sock.getRemoteSocketAddress());[/li][/list]
  43.  
  44.             while (true) {
  45.                
  46.                 // Receiving data
  47.                 DataInputStream input = new DataInputStream(sock.getInputStream());
  48.                 String data = input.readUTF();
  49.  
  50.                 System.out.println("\n </li><li type="disc"> Receiving data..." + data);[/li][/list]
  51.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  52.  
  53.                 // Sending data
  54.  
  55.                 DataOutputStream output = new DataOutputStream(sock.getOutputStream());
  56.                 System.out.println(" </li><li type="disc"> Sending data..." + data);[/li][/list]
  57.                 output.writeUTF(data);
  58.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  59.  
  60.                 // Exit
  61.                 if (data.equals("exit")) {
  62.                     System.out.println("\n </li><li type="disc"> Closing connection to host " + sock.getRemoteSocketAddress());[/li][/list]
  63.                     sock.close();
  64.                     break;
  65.                 }
  66.             }
  67.         }
  68.         catch (IOException e) {
  69.             System.out.println(" [!] Error: the connection with host " +
  70.                 sock.getRemoteSocketAddress() + " has been lost");
  71.         }
  72.     }
  73. }

CLIENT
Código: Java
  1. /* Client */
  2.  
  3. import java.net.*;
  4. import java.io.*;
  5. import java.util.Scanner;
  6.  
  7. class Client {
  8.     public static void main(String[] args) {
  9.         String server = "127.0.0.1";
  10.         int port = 2236;
  11.         System.out.println(" </li><li type="disc"> Connecting to the server [" + server + ":" + port + "]");[/li][/list]
  12.  
  13.         try {
  14.             Socket client = new Socket(server, port);
  15.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  16.  
  17.             while (true) {
  18.                 // Input
  19.                 System.out.print("\n [?] Command: ");
  20.                 Scanner scan = new Scanner(System.in);
  21.                 String data = scan.nextLine();
  22.                 data.trim();
  23.  
  24.                 // Sending data
  25.                 System.out.println(" </li><li type="disc"> Sending data..." + data);[/li][/list]
  26.                 DataOutputStream output = new DataOutputStream(client.getOutputStream());
  27.                 output.writeUTF(data);
  28.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  29.  
  30.                 // Receiving data
  31.                 DataInputStream input = new DataInputStream(client.getInputStream());
  32.                 data = input.readUTF();
  33.                 System.out.println(" </li><li type="disc"> Receiving data..." + data);[/li][/list]
  34.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  35.  
  36.                 // Exit
  37.                 if (data.equals("exit")) {
  38.                     System.out.println("\n </li><li type="disc"> Closing connection...");[/li][/list]
  39.                     client.close();
  40.                     break;
  41.                 }
  42.             }
  43.         }
  44.         catch (IOException e) {
  45.             System.out.println(" [!] Error: " + e);
  46.         }
  47.     }
  48. }

Faltaría que modifiques el servidor para que trate a cada dato recibido como un comando, es decir, que lo envíe como comando al sistema y, finalmente, devuelva la respuesta al cliente (seguro que en un rato lo hago). Con eso ya tendrías una remote shell. Si querés obtener algo mejor y más actualizado, tenés que invertir los roles, es decir, hacer que el cliente reciba los comandos, los ejecute en el sistema y envíe de vuelta la respuesta al servidor (con eso lograrías una reverse shell ;) ).

Saludos!
WhiZ


Bueno, última edición. Acá te dejo la remote shell. Con este código podrás ejecutar comandos de forma remota. Sólo te queda hacerlo reverse  :)

SERVER
Código: Java
  1. /* Server */
  2. import java.net.*;
  3. import java.io.*;
  4.  
  5. class Server {
  6.     public static void main(String[] args) {
  7.         System.out.println(" </li><li type="disc"> Running server...");[/li][/list]
  8.         ServerSocket server;
  9.         int port = 2236;
  10.  
  11.         try {
  12.             server = new ServerSocket(port);
  13.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  14.             System.out.println(" </li><li type="disc"> Waiting for clients on port " + server.getLocalPort());[/li][/list]
  15.  
  16.             while (true) {
  17.                 Socket sock = server.accept();
  18.  
  19.                 Thread t = new ThreadServerHandler(sock);
  20.                 t.start();
  21.             }
  22.  
  23.         } catch(SocketTimeoutException e) {
  24.             System.out.println(" [!] Error: " + e);
  25.  
  26.         } catch (IOException e) {
  27.             System.out.println(" [!] Error: " + e);
  28.         }
  29.     }
  30. }
  31.  
  32. class ThreadServerHandler extends Thread {
  33.     private Socket sock = null;
  34.  
  35.     public ThreadServerHandler(Socket sock) {
  36.         super("ThreadServerHandler");
  37.         this.sock = sock;
  38.     }
  39.  
  40.     public void run() {
  41.         try {
  42.             System.out.println("\n </li><li type="square"> New client: " + sock.getRemoteSocketAddress());[/li][/list]
  43.  
  44.             while (true) {
  45.                
  46.                 // Receiving data
  47.                 DataInputStream input = new DataInputStream(sock.getInputStream());
  48.                 String data = input.readUTF();
  49.  
  50.                 System.out.println("\n </li><li type="disc"> Receiving data from " + [/li][/list]
  51.                     sock.getRemoteSocketAddress() + "..." + data);
  52.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  53.  
  54.                 // Exit
  55.                 if (data.equals("exit")) {
  56.                     System.out.println("\n </li><li type="disc"> Closing connection to host " + sock.getRemoteSocketAddress());[/li][/list]
  57.                     DataOutputStream output = new DataOutputStream(sock.getOutputStream());
  58.                     output.writeUTF(data);
  59.                     sock.close();
  60.                     break;
  61.                 }
  62.  
  63.                 // Running the command
  64.                 String stdout = runCmd(data);
  65.  
  66.                 // Sending data
  67.  
  68.                 DataOutputStream output = new DataOutputStream(sock.getOutputStream());
  69.                 System.out.println(" </li><li type="disc"> Sending data to " + [/li][/list]
  70.                 sock.getRemoteSocketAddress() + "...");
  71.                 output.writeUTF(stdout);
  72.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  73.  
  74.             }
  75.  
  76.         } catch (IOException e) {
  77.             System.out.println(" [!] Error: the connection with host " +
  78.                 sock.getRemoteSocketAddress() + " has been lost");
  79.         }
  80.     }
  81.  
  82.     public String runCmd(String cmd) {
  83.         try {
  84.             String line = null;
  85.             StringBuilder builder = new StringBuilder();
  86.             builder.append("\n\n");
  87.  
  88.             Process p = Runtime.getRuntime().exec(cmd);
  89.             p.waitFor();
  90.          
  91.             BufferedReader stdout = new BufferedReader(new InputStreamReader(p.getInputStream()));
  92.  
  93.             while ((line = stdout.readLine()) != null) {
  94.                 builder.append(line);
  95.                 builder.append(System.getProperty("line.separator"));
  96.             }
  97.  
  98.             return builder.toString();
  99.  
  100.         } catch (IOException e) {
  101.             System.out.println(" [!] Error: " + e);
  102.             return "";
  103.  
  104.         } catch (InterruptedException e) {
  105.             System.out.println(" [!] Keyboard Interrupt");
  106.             return "";
  107.         }
  108.     }
  109. }

CLIENT
Código: Java
  1. /* Client */
  2.  
  3. import java.net.*;
  4. import java.io.*;
  5. import java.util.Scanner;
  6.  
  7. class Client {
  8.     public static void main(String[] args) {
  9.         String server = "127.0.0.1";
  10.         int port = 2236;
  11.         System.out.println(" </li><li type="disc"> Connecting to the server [" + server + ":" + port + "]");[/li][/list]
  12.  
  13.         try {
  14.             Socket client = new Socket(server, port);
  15.             System.out.println(" </li><li type="square"> OK");[/li][/list]
  16.  
  17.             while (true) {
  18.                 // Input
  19.                 System.out.print("\n [?] Command: ");
  20.                 Scanner scan = new Scanner(System.in);
  21.                 String data = scan.nextLine();
  22.                 data.trim();
  23.  
  24.                 // Sending data
  25.                 System.out.println(" </li><li type="disc"> Sending data..." + data);[/li][/list]
  26.                 DataOutputStream output = new DataOutputStream(client.getOutputStream());
  27.                 output.writeUTF(data);
  28.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  29.  
  30.                 // Receiving data
  31.                 System.out.print(" </li><li type="disc"> Receiving data...");[/li][/list]
  32.                 DataInputStream input = new DataInputStream(client.getInputStream());
  33.                 data = input.readUTF();
  34.                 System.out.println(data);
  35.                 System.out.println(" </li><li type="square"> OK");[/li][/list]
  36.  
  37.                 // Exit
  38.                 if (data.equals("exit")) {
  39.                     System.out.println("\n </li><li type="disc"> Closing connection...");[/li][/list]
  40.                     client.close();
  41.                     break;
  42.                 }
  43.             }
  44.         }
  45.         catch (IOException e) {
  46.             System.out.println(" [!] Error: " + e);
  47.         }
  48.     }
  49. }

Espero que te sirva y que puedas llevar a cabo con éxito tu proyecto.

Saludos!
WhiZ
« Última modificación: Enero 03, 2015, 04:18:25 pm por WhiZ »


 

[SOLUCIONADO] ¿Kali Linux o Kali Linux Ligth ?

Iniciado por worq

Respuestas: 2
Vistas: 27715
Último mensaje Noviembre 21, 2017, 12:28:54 pm
por Codig0Bit
[SOLUCIONADO] Multiuploader de imagenes con mysql, hosting de imagenes con mysql

Iniciado por graphixx

Respuestas: 4
Vistas: 14817
Último mensaje Marzo 26, 2013, 05:42:58 pm
por Xt3mP
[SOLUCIONADO] Linux Mint, errores, errores y mas errores...

Iniciado por n1sendev

Respuestas: 12
Vistas: 18755
Último mensaje Noviembre 22, 2017, 06:50:55 am
por RuidosoBSD
[SOLUCIONADO] Problem al instalar Windows "cualquier windows"

Iniciado por Made

Respuestas: 7
Vistas: 9478
Último mensaje Septiembre 03, 2012, 04:53:08 pm
por Made
[SOLUCIONADO] Ayuda urgente con Virus "Virus.Win32Sality"

Iniciado por Napsters

Respuestas: 6
Vistas: 18027
Último mensaje Junio 11, 2012, 03:38:18 am
por Satyricon