¿Cómo puedo determinar qué está causando que mi Nexus 4 se congele?

Tengo un Nexus 4 nuevo con Cataclysm ROM instalado (rooteado, 4.3).

El dispositivo comenzó a congelarse recientemente, ya que no responde a las pulsaciones de los botones, pero el LED blanco parpadea. Tengo que mantener presionado el botón de encendido y luego presionarlo nuevamente para reiniciar.

Solía ​​congelarse de vez en cuando, digamos, una vez a la semana, pero durante la última semana o dos comenzó a congelarse todos los días o al menos cada dos días.

No puedo pensar en una aplicación instalada recientemente o un cambio de configuración que podría haber provocado esto.

Me pregunto si hay alguna manera de determinar 'cuándo' el dispositivo se congela y 'qué' es lo que hace que se congele, idealmente para poder determinar si es la ROM o el dispositivo el que falla. ¿Existe alguna aplicación que pueda registrar el comportamiento del dispositivo y ser leída por un usuario semitécnico como yo?

Es posible que desee considerar el uso de adb logcat. Google tiene una página de documentación aquí . También hay una pregunta en nuestro sitio llamada ¿Cómo puedo ver y examinar el registro de Android? que es posible que desee comprobar.
Probablemente la mejor manera de determinar si la ROM tiene la culpa es volver a la ROM original y ejecutarla por un tiempo, si todavía tienes problemas, entonces es casi seguro que es un problema de hardware. Logcat es una buena solución después de haber determinado que no se trata de un problema de hardware, por lo que puede enviar la información a los desarrolladores de la rom y se puede depurar correctamente.
Puede que me asesinen por esto, pero CyangoenMod ha tenido bastantes errores y retrasos en mi HTC One, Nexus 4, HTC Desire, Galaxy S4 en varios grados. Pasé de él a una combinación ASOP / Wanam Xposed, por lo que tengo un sistema operativo estable con toda la personalización que quiero. No estoy criticando a CyanogenMod, son un gran grupo, pero definitivamente probaría otra ROM primero como sugirieron los demás.

Respuestas (1)

Hay algunas maneras de precisar su problema. La forma más fácil debería ser leer el last_kmsg que normalmente se almacena en /proc/last_kmsg . El kernel registra todo allí y se puede leer hasta el próximo reinicio.

Entonces, leer last_kmsg siempre muestra cosas que sucedieron antes de que el dispositivo se reiniciara por última vez.

Otra forma sería usar "adb logcat" o, más cómodo, la aplicación Catlog , que puede registrar su logcat en un archivo .txt en la tarjeta SD. Tenga en cuenta que logcat no es lo mismo que un mensaje del núcleo, pero también incluye mensajes de aplicaciones de espacio de usuario y elementos de la interfaz de usuario.

Si se me permite hacer una conjetura descabellada, diría que es culpa de la ROM (por ejemplo, subtensión o algo que va mal).

¡Atentamente!

Espero que sea la ROM y no el teléfono. Probaré los métodos que mencionas la próxima vez que el teléfono se congele.
Solo intenté leer last_kmsg y no se abrió con un editor de texto. Intenté enviar a Dropbox y no funcionaba. Ni siquiera se copiaría a otra ubicación en el dispositivo.
Parece que no tienes derecho a leerlo. ¿Estás tratando de leerlo como root? ¿Cuáles son las propiedades del archivo? Debería ser -r--r----- .