Carlos Robles frikiblog

Depurar servicios, teclados, aplicaciones desde el telefono, aplicaciones que ya hemos subido

| 0 comments

Las mismas soluciones interesan para distintas cosas.
Si vamos a lanzar un servicio (como puede ser un input method o mil cosas mas).
si queremos que un programa siempre lleve conectado el depurador, aunque lo lancemos desde el telefono o el emulador.
Otro caso muy normal es cuando subimos una aplicacion y falla, y queremos volverlo a ejecutar pero sin cambiar codigo. A veces eclipse sabe que no tiene.
Y otro es cuando estamos en una actividad que lanza a otra, pero no llamamos a finish, porque la primera sigue teniendo que estar ahi a la vuelta. Si falla la segunda, se finalizará pero en muchos de los casos volveremos a la actividad anterior, que aunque sean actividades distintas, por suerte se identifican como parte del mismo proceso, asique podemos rescatar la depuracion y volverlo a intentar sin tener que subirla de nuevo o empezar la ejecucion desde el principio. Eso, si, el depurador se habra desconectado.

Para todas estas situaciones y más, tenemos dos opciones:
1. Tener en cuenta que el debugger se puede conectar manualmente.  Para ello vamos a la perspectiva DDMS y en la pestaña Devices.
Pinchamos el nombre del proceso, que es facil porque se llama igual que el paquete, y despues pulsamos el bichito verde.
Otro dia explicaré mas cosas útiles de los demas botones, pero aprovecho para destacar otro muy util, que es el de Stop, que va muy  bien por ejemplo cuando un proceso se nos cuelga y no podemos pararlo desde el mismo programa o con los botones del movil.



2. La otra opcion para conectar el depurador, mucho mas facil, menos estresante que ir corriendo,  y que nos garantiza que estará conectado a tiempo para la linea que lo necesitamos, es incluir esta instruccion en el código, al principio de la actividad (en el onCreate esta bien) o donde queramos. Acuerdate de quitarlo para la version release, por dejar las cosas limpias.

android.os.Debug.waitForDebugger();
Facebook Twitter Linkedin Plusone Digg Delicious Reddit Email

Leave a Reply

Required fields are marked *.