Socket Android 4.X
Hola,
Decripción: Un "Hello World !!" con sockets, Socket-Cliente en dispositivo Android 4 y el servidor en una máquina local, la aplicación tronaba en el dispositivo Android 4 y se cerraba. La unica forma de que no tronara era con un catch Exeption , donde la variable no arrojaba nada:
de echo el valor de 'e' es null, es decir no regresa nada y de no tener la condición tronaba por pasar 'null' a Log.e(). Siempre tronaba en la línea donde creaba el socket:
Socket lsocket=new Socket("10.2.1.16",7777);
Entender Solución: Cuando me encontré con el siguiente articulo :
http://www.androiddesignpatterns.com/2012/06/app-force-close-honeycomb-i...
Remedio: Ahora la actividad donde defino mi socket se ve de la siguiente forma:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menu);
new Thread(new Runnable() {
public void run() {
try {
Log.i("PeleApp"," Before definition of Socket : 10.2.1.16"+":"+7777);
Socket lsocket=new Socket("10.2.1.16",7777);
Log.i("PeleApp","after connect ..Connexion Successful!...");
lsocket.close();
} catch (UnknownHostException e) {
String err = (e.getMessage()==null)?"UnknownHostException":e.getMessage();
Log.e("PeleApp","0..-"+err);
} catch (IOException e) {
String err = (e.getMessage()==null)?"IOException":e.getMessage();
Log.e("PeleApp","1.-"+err);
}catch (NumberFormatException e) {
// TODO Auto-generated catch block
String err = (e.getMessage()==null)?"NumberFormatException":e.getMessage();
Log.e("PeleApp","2.-"+err);
}catch (Exception e){
String err = (e.getMessage()==null)?"Exception":e.getMessage();
Log.e("PeleApp","3.-"+err);
}
}
}).start();
}
}
Conclusión:Por lo que veo muchas aplicaciones antiguas les debe de estar pasando esto, por abusar del "UI-Thread" principal y la aplicación de buenas practicas para mejorar el performance de parte de Android 4.X. Por lo que muchos "How to" que estaba siguiendo y que estan en la red son obsoletos.
Saludos
- Inicie sesión o regístrese para enviar comentarios
Comentarios recientes
hace 8 semanas 3 días
hace 12 semanas 4 días
hace 20 semanas 23 horas
hace 28 semanas 1 día
hace 30 semanas 5 días
hace 32 semanas 2 días
hace 35 semanas 4 días
hace 35 semanas 4 días
hace 41 semanas 4 días
hace 42 semanas 5 días