Red de conocimiento informático - Espacio del host - Me gustaría preguntar cómo construir un servidor en un teléfono móvil y cómo usar Socket.

Me gustaría preguntar cómo construir un servidor en un teléfono móvil y cómo usar Socket.

Modo TCP:

Implementación del cliente del protocolo TCP:

//Cree un objeto Socket y especifique la dirección IP y el número de puerto del servidor.

socket socket = new socket(" 192.168.1.104 ", 4567);

//Utilice InputStream para leer archivos en el disco duro. Aquí, solo se utilizan archivos como fuente de información y se puede leer la información ingresada por el usuario controlador.

InputStreaminputStream=new

file inputstream(" f://file/words . txt ");

//Obtiene el OutputStream del socket.

flujo de salida flujo de salida = socket. obtener flujo de salida();

búfer de bytes[]= nuevo byte[4 * 1024]; p>//Obtiene datos de InputStream y escríbelos en OutputStream.

while((temp = inputstream . read(buffer))!=-1)

{

outputStream.write (búfer, 0, temperatura);}

outputStream.flush(). }

Implementación del protocolo TCP en el lado del servidor;

//Declarar el objeto ServerSocket.

ServerSocketserverSocket = null

Prueba {

//Crea un objeto ServerSocket y haz que este Socket escuche en el puerto 4567.

server socket = newServerSocket(4567);

// Llame al método aceptar () de ServerSocket para aceptar la solicitud enviada por el cliente.

//Si el cliente no envía datos, el hilo está bloqueado.

socket socket = socket del servidor. Accept();

//Obtiene el objeto InputStream del socket.

InputStreaminputStream = socket . getinputstream();

búfer de bytes[]= nuevo byte[1024 * 4]

int temp = 0; >

//Lee los datos enviados por el cliente desde InputStream.

while((temp = inputstream . read(buffer))!=-1)

{

system out . 0, temp));}

}

catch(IOExceptione)

{

e . p>

socket del servidor . close();

}

Modo UDP

El código del cliente UDP se implementa de la siguiente manera:

Public static void main(String[]args)

{

Pruebe {

//Primero cree un objeto DatagramSocket.

socket de datagrama socket = nuevo socket de datagrama(4567);

//Crear un InetAddree.

Seis

dirección del servidor de inet = dirección de inet . get byname(" 192.168.1.104 ");

String str = " hola

//Estos son los datos a transmitir.

byte data[]= str .getbytes();

//Descompone el contenido de la transmisión en bytes

<. p>//Cree un objeto DatagramPacket y especifique a qué dirección y número de puerto en la red se debe enviar este paquete.

Paquete DatagramPacket=nuevo

DatagramPacket(datos, longitud de datos, dirección del servidor, 4567);

//Llame al método de envío del objeto socket para enviar datos

socket.send(paquete de datos);}

Catch (Exception)

{

e.printstacktrace();}

}

UDP El código del servidor se implementa de la siguiente manera:

//Cree un objeto DatagramSocket y especifique el número de puerto de escucha.

datagram socket socket = new datagram socket(4567);

byte data[]. = nuevo byte[1024];

//Crea un objeto DatagramPacket vacío

paquete de datagrama = nuevo paquete de datagrama(datos, datos. longitud);

//Utilice el método de recepción para recibir los datos enviados por el cliente

//Si el cliente no envía datos, el proceso termina aquí

socket.receive(paquete de datos). );

resultado de cadena = newString(paquete . obtener datos(), paquete.getOffset(),

paquete . getlength(); .println("resultado->+resultado);