Android Studio, logcat se limpia después de que se cierra la aplicación

133

Tengo un problema con mi logcat desde la actualización 1.2 Beta para Android Studio. Cuando ejecuto mi aplicación, registra todo como lo hacía normalmente, luego llego al punto donde mi aplicación se bloquea con la aplicación diciendo: desafortunadamente, el juego se detuvo.

Después de unos segundos, Android cierra ese mensaje. Cuando eso sucede, mi logcat también se borra por completo, lo que significa que apenas tengo tiempo para leer el error. Encontré algo de información sobre un búfer, pero parece que Android Studio no tiene la opción de aumentarlo además del hecho de que dudo que ese sea el problema.

Algo que puede ser útil es que después de que se borra y rellena, el proceso cambia a Android.process.core y el mensaje que recibo en mi logcat es:

04-13 10:28:13.394  12259-12265/android.process.acore D/dalvikvm    
Debugger has detached; object registry had 1 entries

Editar: leí sobre puntos de interrupción, por lo que deshabilité la aplicación de enfoque en puntos de interrupción en Configuración-construcción, ejecución, despliegue-depurador pero no tuvo ningún efecto.

Loto negro
fuente
2
Si encuentra la ubicación instalada del programa adb, puede ejecutarlo adb logcatdesde su terminal o ventana de comandos y, opcionalmente, canalizarlo a un localizador, grep, tee o lo que sea.
Chris Stratton
1
sí, también puede intentarlo adb shell bugreport > log.txt, se obtendrían tipos de información de registro una vez que finalizara el comando.
delicioso
@yummy funcionó lo mejor para mí por ahora, todavía espero encontrar una solución ya que esta no es la mejor manera en mi opinión. Gracias
Black Lotus
1
No encontré ninguna solución para no limpiar los registros con Android Studio 1.2, pero una solución fácil es no hacer clic en el botón de cierre (en el dispositivo) cuando la aplicación falla. Por lo tanto, tiene todos los registros y las razones por las que las aplicaciones se bloquearon.
Chakir
@Jameltheone Los mensajes solo permanecen en la pantalla durante unos segundos, luego cierra el diálogo de bloqueo. Así que realmente no tengo control sobre eso.
Black Lotus

Respuestas:

271

Tuve el mismo problema, pero parece más una característica que un error:

En AndroidStudio, la configuración predeterminada para la ventana Logcat parece ser "Mostrar solo la aplicación seleccionada" (esquina superior derecha de la ventana Logcat) ... que está mirando el registro del proceso seleccionado (su inicio actual por defecto). Entonces, cuando su aplicación se bloquea durante la prueba, ese proceso desaparece, por lo que el filtro borra el registro.

En su lugar, seleccione "Editar configuración de filtro ..." y configure un filtro para su aplicación , por ejemplo:

  • FilterName: MyApp
  • PackageName: com.example.myapp (<< reemplace con el nombre del paquete de su aplicación)

... y luego seleccione ese filtro para futuras ejecuciones. Esto debería mantener el registro allí, incluso después de que la aplicación se bloquee.

maxdownunder
fuente
Muchas gracias. ¡He estado descubriendo el error hace 2 días! Ahora sé cómo ver realmente el error. :)
Woppi
Usted es un SALVADOR que estaba tratando de copiar y pegar el registro antes de que se borre ... pensé que era mi teléfono porque otros teléfonos se comportan normalmente.
Maestro Fathi
Justo lo que me faltaba. Esta debería ser la respuesta aceptada.
Grasa
Tuve el mismo problema Funciona perfectamente.
Chandan Pednekar
59

Cambie "Mostrar solo la aplicación seleccionada" a "Sin filtros". De esta manera, puede ver la salida de logcat de un proceso incluso cuando ese proceso no se está ejecutando.

La desventaja es que su logcat se llenará con más spam de otros procesos.

Brian Attwell
fuente
1
para filtrar el correo no deseado, escriba el nombre del paquete de su propia aplicación en la barra de búsqueda además del menú desplegable "mostrar solo la aplicación seleccionada / sin filtro".
computingfreak
24

Mi aplicación se estaba bloqueando y reiniciando. También tuve algunos problemas al leer el logcat para saber lo que estaba sucediendo. Luego noté que en el menú desplegable, al lado del menú desplegable Dispositivo, tenía algo como "com.mypackage.myapp ('algún número')" y cuando mi aplicación se bloqueó había otra opción que decía "com.mypackage.myapp ( 'algún número') [MUERTO] " . Si selecciona la opción "Muerto", le mostrará el logcat de la instancia anterior.

Dead LogCat

ALourenco
fuente
Aparece cuando se bloquea.
ALourenco
Me refería al choque. El PID cambia pero la instancia muerta no aparece en la lista.
Karan Modi
20

En caso de bloqueo, vea la Runpestaña en la parte inferior del IDE.

Puede ver el motivo del bloqueo en esta parte (incluso en caso limpio logcat).

Nota: Si el truco anterior no funciona, intente producir un bloqueo e inmediatamente desconecte el cable móvil (si usa el dispositivo real para la prueba). Puedes ver el error antes de que se limpie.

Actualización: si el truco anterior no funciona, intente conectar y desconectar el teléfono y, con suerte, resolver el problema.

Actualización 2: si nuevamente no funciona, intente invalidar las capturas y reiniciar, luego comience a depurar nuevamente.

Actualización 3: como la última forma, intente eliminar la aplicación e instalarla nuevamente y luego comenzar a depurar (si no pierde esa condición que desea probar)

Amir Hossein Ghasemi
fuente
6

En Android Studio 2+

  1. Hacer clic Run

  2. Hacer clic Edit Configurations

  3. En la Run/Debug Configurationsventana selecciona la Miscellaneouspestaña

  4. Asegúrese de que la Clear log before launchcasilla de verificación no esté marcada

Flot2011
fuente
4

Me he enfrentado al mismo problema y esta es la solución: -

1- Herramientas -> Android -> Habilitar integración ADB.

y ahora puedes ver el logcat y los bloqueos como de costumbre

Ziad Gholmish
fuente
Mi integración ADB ya estaba habilitada por desgracia. Algo que puede ser útil es que después de que se borra recibo el mensaje: 04-13 10: 28: 13.394 12259-12265 / android.process.acore D / dalvikvm ﹕ El depurador se ha desconectado; registro de objetos tenía 1 entradas
Black Lotus
@BlackLotus ¿has resuelto tu problema? Me enfrento al mismo problema aquí
Hoo
Esto ya no es válido en el nuevo Android Studio.
Hamzeh Soboh
4

El filtro borra el registro una vez que la aplicación se bloquea. Seleccione "Editar configuración de filtro" y cree su propio filtro personalizado con el nombre del filtro. Esto guardará el registro con información, incluso cuando la aplicación esté bloqueada.

Mohammed Nishar
fuente
1

Es 2018 y esto todavía puede suceder. Cierre Android Studio y vuelva a abrir.

Straya
fuente
0

Este error parece haberse solucionado con la nueva versión de Android Studio versión 1.2.2

Chakir
fuente
1
El error todavía está aquí, incluso en Android Studio 2.2.2, así que supongo que @maxdownunder tenía razón con la suposición de que en realidad es una ... "función"
Aenadon
0

Me encontré con el mismo problema y ninguna de las respuestas me pudo ayudar, hasta que me di cuenta de que mi aplicación estaba causando una excepción OutOfMemoryException. Esa es una causa raíz probable también.

Chisko
fuente