Skip to content

Cómo depurar una aplicación en Android

Cómo depurar una aplicación en Android

En esta nota vamos a hablar de la depuración de aplicaciones y programas, también conocida como debugging por su término en inglés. Se trata de un procedimiento muy importante que se encarga de identificar y corregir todos los errores de programación que existan. Por ello te explicaremos cómo depurar una aplicación en Android.

Qué es depurar un programa

Como mencionamos, a la acción de depurar programas también se la conoce como debugging en inglés. Esto es porque es un proceso similar a la eliminación de bichos (bugs) y así es como se llama a los errores vinculados a la programación. Además, el término bug proviene de las primeras computadoras. Donde los insectos realmente eran un problema porque eran atraídos por las luces y dañaban el equipo.

En cuanto al proceso de depurar una aplicación, es cierto que se pueden utilizar técnicas y medios para hacer una revisión del código fuente. Así como también para detectar errores y solucionarlos. Pero, en gran medida, aún se trata de una actividad que debe realizarse de forma manual y con bastante paciencia!

Cómo depurar una aplicación en Android

También debes tener en cuenta que, en muchos casos, debes incluir instrucciones auxiliares en el código fuente para poder hacer un seguimiento de la ejecución del programa. De esta manera podrás tener tanto los valores de variables como los de direcciones de memoria. Si quieres acceder a más información sobre propiedades y configuraciones de tu Android, te mostraremos cómo modificar el archivo Build.pro de tu equipo.

Depurar aplicaciones en Android

Así como en otras ocasiones hemos necesitado contarte qué son las opciones de desarrollo en Android, en este caso ara depurar una aplicación en equipos con Android deberás conocer el programa Android Studio. Pues incluye un depurador que te permite depurar aquellas apps que se ejecutan en el emulador o en un dispositivo con Android conectado. Lo que deberás hacer primero es seleccionar el equipo en el cual depurarás la aplicación. Luego, esta herramienta tiene la capacidad de establecer los puntos de interrupción en tu  código Java y C o C++. Así como también podrás utilizarla para evaluar las variables y las expresiones al ejecutarse. Un último detalle no menor es que, además, brinda la posibilidad de realizar capturas de pantalla y videos de la aplicación.

Ahora sí, para iniciar el proceso de depuración debes presionar primero en la opción Debug que se encuentra en la barra de herramientas. De esta manera, Android Studio se encarga de compilar un APK y firmarlo con la clave de depuración correspondiente. Luego, lo instala en el dispositivo que hayas seleccionado anteriormente y lo abre precisamente en la ventana Debug. Ten en cuenta que si también quieres depurar tu código nativo, deberás ejecutar también en esta ventana el depurador LLDB.

Si te ocurre que no aparecen dispositivos en la pestaña denominada Select Deployment Target,  probablemente sea necesario que pulses sobre la opción Create New Emulator. Así se configurará el emulador de Android.

Depurar una aplicación

En el caso de que quieras depurar una aplicación se encuentre ejecutándose en un emulador o un equipo conectado, se puede realizar el proceso de otra manera. Si te sucede esto, puedes depurar una app de esta manera:

  1. Presiona sobre la opción Attach debugger to Android process.
  2. Una vez que aparezca una ventana de diálogo con el nombre Choose Process, elige el proceso que quieres que realice el depurador. El depurador te mostrará el equipo y el proceso de la aplicación para llevar a cabo esa acción. Así como también podrás ver los dispositivos de hardware o virtuales que se encuentren conectados a la computadora. Si quieres que te muestre todos los procesos en todos los equipos debes presionar en Show all processes. En el caso de que quieras seleccionar un tipo de depuración distinta, debes pulsar sobre Debugger.
  3. Haz click en Ok y verás en pantalla nuevamente la pestaña Debug. A la derecha del título que corresponde a esta ventana, podrás ver otras dos pestañas. Una de ellas es para depurar el código nativo, mientras que la otra depura mediante el código Java. Ten en cuenta que cada sesión de depuración tiene su propia pestaña y su propio número de puerto, el cual aparece entre paréntesis.
  4. Por último, cuando quieras culminar una sesión de depuración deberás presionar en la pestaña de dicha sesión y hacer click en Terminate.

Cómo depurar una aplicación en Android

Ten en cuenta que el depurador y el recolector de elementos no usados de esta herramienta están vinculados. Es decir que Android Studio garantiza que aquellos objetos que el depurador identifique, no serán recolectados como “elemento no usado” hasta que hayas desconectado el depurador. Por lo que esto podría generarte una acumulación de objetos mientras el depurador se encuentre conectado.

Tipos de depuración

Por último, es importante que sepas que Android Studio lleva a cabo el tipo de depuración Auto. Pero esto no significa que no puedas modificar, por ejemplo, determinados ajustes. Incluso puedes realizar un tipo de depuración diferente. Para ello, debes desplegar la lista Debugger. La misma se encuentra en el diálogo Choose Process y seleccionar el tipo que quieras. Las depuraciones disponibles en esta herramienta son las siguientes:

  • Auto. Como te mencionamos, en este caso Android decide de forma automática la mejor opción según el código que quieres depurar.
  • Java. Debes utilizar esta opción precisamente si quieres depurar un código Java. Ten en cuenta que este depurador ignora aquellos puntos de interrupción o control que hayas establecido en el código nativo.
  • Native. En este caso sólo se utiliza el LLDB para depurar el código. No pierdas de vista que, si utilizas esta opción, no tendrás disponible a la vista la sesión que pertenece al depurador de Java. En la configuración predeterminada, LLDB revisa el código nativo. Mientras que deja de lado los puntos de interrupción pertenecientes al código Java.
  • Hybrid. Esta opción te permite realizar modificaciones entre la depuración de Java y la del código nativo. De esta manera podrás inspeccionar tanto los puntos de interrupción del código Java como los del código nativo. Incluso podrás realizar ambas cosas sin tener que reiniciar la aplicación ni cambiar la configuración de depuración.

Puesto que no es un proceso simple para cualquier usuario, te recomendamos que prestes mucha atención a cada paso. Pues sólo así podrás asegurarte de completar el proceso correctamente y evitar dañar tu dispositivo!

Rate this post