![]() |
|
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
«
Tema Anterior
|
Siguiente tema
»
|
Herramientas |
#1
|
||||
|
||||
ServerSocket se cierra al acabar.
Tengo un servidor que recibe una imagen y la guarda en el escritorio por socket. Lo que pasa que al recibir 1 imagen, se me cierra el programa entero. ¿Como puedo hacer que siga funcionando?
(Click para mostrar/ocultar)
Abajo, al recibir la imagen , el socket se cierra, pero no quiero (T-T) (T-T) |
|
#2
|
||||
|
||||
Se te cierra porque el programa acaba, si quieres que espere la recepción de otra imagen tienes que volver a hacer socket.accept(), que bloqueará la ejecución hasta que haya otra petición.
Con poner un while(true){ } que encierre todo a partir de, e incluyendo, Socket sock=socket.accept() te vale. P.D: La fecha también tendrás que actualizarla dentro del bucle, o si no siempre escribirá el mismo fichero. Que, por cierto, si te mandan dos imágenes en el mismo segundo, se sobreescribirán porque el fichero tiene el mismo nombre. Última edición por mocelet Día 29/04/15 a las 10:38:59 |
#3
|
||||
|
||||
Que encierre todo a partir de donde? Hasta el socket.accept
|
#4
|
||||
|
||||
Código:
main(...){ [...] ServerSocket socket = new ServerSocket(...) while(true){ Socket sock = socket.accept(); date = new Date(); [... el resto igual...] } } |
#5
|
||||
|
||||
Cita:
Gracias ^^^^^^ No me funciona lo de actualizar la fecha dentro del while. Pense que seria date.update o algo asi ![]() ![]() |
#6
|
||||
|
||||
Solucionado : metí el date = new date(); de nuevo en el bucle.
Muchas gracias moce ^^ |
Respuesta |
![]() |
||||||
|
«
Tema Anterior
|
Siguiente tema
»
Herramientas | |
|
|
Hora actual: 14:10:20 (GMT +2)
HTCMania: líderes desde el 2007