Aprovechar al máximo el depurador de Android Studio

Aprovechar al máximo el depurador de Android Studio


Este es un truco que aprendí recientemente de un desarrollador senior de Android en mi empresa, y ahora me siento miserable, lamentando el tiempo que pasé esperando a que la construcción de Gradle revisara mis cambios al escribir aplicaciones de Android.


Este es un escenario típico que cada desarrollador de Android podría encontrar al menos una vez durante su ciclo de vida de desarrollo. Tiene una lista de elementos que desea mostrar en ListView o RecyclerView .


A continuación se muestra nuestro querido método onBindViewHolder , que asocia su modelo con sus componentes de vista RecyclerView .


 @Override public void onBindViewHolder(ViewHolder holder, final int position) { final String name = values.get(position); holder.txtHeader.setText(name); holder.txtFooter.setText("Footer: " + name); } 

Ahora, supongamos que desea cambiar el color del texto para cada tercer elemento de la lista. Por lo tanto, el código se verá así:


 @Override public void onBindViewHolder(ViewHolder holder, final int position) { final String name = values.get(position); holder.txtHeader.setText(name); if (position % 3 == 0) { holder.txtHeader.setTextColor(Color.GREEN); } holder.txtFooter.setText("Footer: " + name); } 

Luego haces clic en Ejecutar y esperas a que se complete la compilación y ves tus cambios, ¿verdad?


Esperando a que se complete la construcción


Ahora, ¿pensarías si hay otra forma de lograr el mismo objetivo?


Leo más profundo


Su salida, Android Studio! Sí, no necesitamos un complemento externo o herramienta para lograr la tarea mencionada, y además, ni siquiera tenemos que volver a armar el proyecto. Has oído bien, podemos prescindir de Gradle :) ¡Así es como!


Paso 1: definir la configuración de inicio


Esta configuración de inicio nos permitirá iniciar nuestra aplicación y adjuntarle un depurador de Android Studio, y también puede adjuntarla a un proceso que ya se esté ejecutando.


Haga clic en Ejecutar → Editar configuraciones .


Ejecutar -> Editar configuraciones


En la esquina superior izquierda del cuadro de diálogo, haga clic en el icono + y seleccione la aplicación de Android .


Aplicación de Android


Ahora dale un nombre, me gusta llamarlo Run-Only , pero puedes llamarlo como quieras.


Seleccione el módulo que contiene el código para su aplicación, en la captura de pantalla a continuación se llama aplicación .


Paso importante:


En la sección Opciones de instalación, seleccione Nada ;
En Opciones de inicio, seleccione Actividad predeterminada ;
En la sección Antes del lanzamiento, elimine la marca Gradle-aware .


Por lo tanto, la configuración debería verse así:


Configuracion


Ahora puede aplicar y guardar esta configuración. Ahora debería seleccionarse automáticamente. Si no, simplemente selecciónelo de la lista.


Ahora coloque un punto de interrupción más cerca de la línea que desea verificar. En nuestro caso, lo colocaremos donde establezcamos el texto.


punto de ruptura


Haga clic derecho en el punto de interrupción y desactive Suspender ( pausa ).


Tan pronto como desactive la casilla, el cuadro de diálogo se expandirá y mostrará más opciones.


Diálogo de opciones


Estamos interesados ​​en la sección Evaluar y registrar . Vamos a escribir una expresión allí para verificar los cambios en nuestro elemento RecyclerView. Haga clic en el pequeño icono azul a la derecha de la ventana Evaluar y registrar entrada para expandirlo a un editor más grande, y agregar una expresión para probar, y haga clic en Aceptar y luego en Listo .


Evaluar y registrar


Ahora haga clic en el icono Depurar con la configuración Ejecutar solo seleccionada y observe esta magia.


Depurar


La aplicación debería comenzar con su actividad de forma predeterminada, y debería ver los cambios realizados allí. Además, si presta mucha atención al IDE, en la parte inferior verá que solo se inicia una tarea: Iniciar actividad .


Actividad de lanzamiento


¡Me gustaría escuchar tus impresiones cuando pruebes este truco!

Source: https://habr.com/ru/post/es419613/


All Articles