studio movil log hacer depurar debug consola como aplicacion java multithreading debugging android-studio breakpoints

java - movil - Android Studio para la depuración de subprocesos



depurar aplicacion android en movil (2)

En Android Studio, es posible especificar si un punto de corte determinado suspenderá la ejecución de solo el hilo de ejecución (que desencadena el punto de interrupción) o todos los hilos. Esto se realiza por punto de corte (es decir, algunos puntos de interrupción pueden suspender todos los hilos, mientras que otros solo suspenden el hilo actual).

Haga clic con el botón derecho en un punto de interrupción para abrir la ventana Propiedades de punto de interrupción:

Tenga en cuenta la opción ''Hacer predeterminado'' que permite que esto sea predeterminado para todos los puntos de interrupción creados recientemente.

Si solo se suspende el hilo actual (opción "Hilo" en la imagen de arriba), entonces el marco de pila de otros hilos no suspendidos no será visible en la ventana Marcos:

He estado teniendo problemas para depurar una aplicación multiproceso con Android Studio 1.1. Parece que cuando se toca un punto de interrupción, todos los demás hilos también se detienen, no solo el que tiene el punto de corte. Creé una aplicación de prueba simple con el siguiente método en Activity onCreate.

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Thread a = new Thread("thread-a") { @Override public void run() { Log.v("thread", "thread-a"); } }; Thread b = new Thread("thread-b") { @Override public void run() { Log.v("thread", "thread-b"); } }; a.start(); b.start(); }

Establecí puntos de interrupción en las líneas Log.v en thread-a y thread-b y luego lo ejecuto en modo de depuración en mi Lollipop Nexus 5.

Cuando se inicia la aplicación, llega al punto de interrupción en thread-a, pero el primer problema que noto es que la interfaz de usuario de la aplicación está en blanco, como si el hilo principal estuviera en pausa. Luego fui a ver que también se golpeó el punto de interrupción en thread-b, de modo que saqué la vista Threads en el depurador de Android Studio, pero cuando voy a expandir la flecha thread-b, no hay nada allí. Cuando amplío el hilo principal, muestra que está pausado en algún lugar de onStart ().

¿Estoy haciendo algo mal o este depurador es incapaz de depurar múltiples hilos a la vez?


En IntelliJ IDEA (y Android Studio está basado en IntelliJ), cuando coloca un punto de interrupción, si hace clic derecho sobre él, se muestra un diálogo y puede seleccionar si pausar todos los hilos (por defecto) o solo ese hilo.

Está pausando todos los hilos, ya que es la configuración predeterminada.