He estado enfrentando un problema grave de agotamiento de la batería en mi ROM personalizada oficial de Cyanogenmod. Después de discutirlo en los foros de la comunidad, se sugirió que use logcat para solucionar el problema.
Problema:
cada vez que desconecto mi dispositivo después de una carga completa, la batería se agota rápidamente. Pierde casi el 50% en 15-20 minutos. Como se mencionó anteriormente, planeo usar logcat para tratar de capturar el problema. Estoy planeando correr adb logcat
inmediatamente después de desconectar el teléfono de la corriente. Sin embargo, he usado logcat en el pasado y me resultó muy difícil extraer datos específicos de la salida grande. Ya fui a través de la página Logcat ayuda oficial y de lectura y escritura de registros para ver si podía encontrar algo útil, pero no pude encontrar una solución para mi problema.
Pregunta:
- ¿Hay alguna forma de usar filtros o alguna otra característica en la que pueda limitar la salida de logcat a las estadísticas que solo están relacionadas con el uso de la batería?
- ¿Puede algo como
adb shell dumpsys batterystats > batterystats.txt
ser de mejor uso para mí? Si es así, ¿cómo lo uso para obtener lo que quiero?
ACTUALIZACIÓN:
BatteryStats para mi drenaje ahora se puede encontrar aquí en Patebin. También esta es mi tabla de historiador de batería:
fuente
Respuestas:
¿Estás seguro de que ninguna aplicación está agotando tu batería? Puede averiguarlo iniciando su teléfono en modo seguro. Lea Cómo iniciar su teléfono en modo seguro para obtener instrucciones. Si su batería no se agota en modo seguro, intente desinstalar las aplicaciones que instaló después de que comenzó a ver este comportamiento extraño. Si no puede averiguar qué aplicación es, intente restablecerla de fábrica. Además, si la batería se agota tan rápido, podría ser una batería defectuosa.
fuente
Seguro. La forma más fácil es usar el monitor del dispositivo desde Android Studio. La forma más compleja es usar la interfaz de línea de comando para adb logcat (usa ANDROID_LOG_TAGS env var). Cf logcat Documentación de la herramienta de línea de comandos en developer.android.com.
El agotamiento de la batería se debe principalmente a que se producen algunas condiciones inesperadas (errores que conducen a las aplicaciones a bucle infinito, dispositivos mal detectados que hacen subóptimos de acceso, por ejemplo, leer byte por byte en lugar de Mb por Mb, etc.). Debe usar la capacidad de filtrado de adb logcat para encontrar estas condiciones inesperadas. Pero tenga en cuenta que dichas herramientas son utilizadas principalmente por desarrolladores de aplicaciones o incluso plataformas, y a veces puede ser un poco complejo pero complejo interpretar dichos registros. Sin embargo, el 100% de los chicos que tuvieron éxito, lo han intentado ;-)
fuente