Estou enfrentando um problema grave de dreno de bateria na minha ROM personalizada Cyanogenmod oficial. Depois de discuti-lo nos fóruns da comunidade, foi sugerido que eu use o logcat para solucionar o problema.
Problema:
Toda vez que eu desconecto o dispositivo após uma carga completa, ele descarrega a bateria rapidamente. Perde quase 50% em 15 a 20 minutos. Como mencionado acima, planejo usar o logcat para tentar capturar o problema. Estou planejando executar adb logcat
imediatamente após desconectar o telefone da energia. No entanto, eu usei o logcat no passado e achei muito difícil extrair dados específicos da saída grande. Eu já passei por página logcat ajuda oficial e Leitura e Escrita Logs para ver se eu poderia encontrar algo útil, mas eu não poderia encontrar uma solução para o meu problema.
Questão:
- Existe alguma maneira de usar filtros ou algum outro recurso em que eu possa limitar a saída do logcat às estatísticas relacionadas apenas ao uso da bateria?
- Algo como pode
adb shell dumpsys batterystats > batterystats.txt
ser de melhor utilidade para mim? Se sim, como usá-lo para obter o que quero?
ATUALIZAÇÃO: O
BatteryStats para meu dreno agora pode ser encontrado aqui em Patebin. Também esta é a minha tabela do historiador da bateria:
fonte
Respostas:
Tem certeza de que nenhum aplicativo está drenando sua bateria? Você pode descobrir isso inicializando o telefone no modo de segurança. Leia Como inicializar o telefone no modo de segurança para obter instruções. Se a bateria não descarregar no modo de segurança, tente desinstalar os aplicativos que você instalou depois de começar a ver esse comportamento estranho. Se você não conseguir descobrir qual aplicativo é, tente redefini-lo de fábrica. Além disso, se a bateria estiver drenando tão rapidamente, pode ser uma bateria defeituosa.
fonte
Certo. A maneira mais fácil é usar o monitor do dispositivo no Android Studio. A maneira mais complexa é usar a interface da linha de comandos para adb logcat (ela usa a ANDROID_LOG_TAGS env var). Cf documentação da Ferramenta de Linha de Comando do logcat em developer.android.com.
O consumo de bateria ocorre principalmente devido a algumas condições inesperadas (erros ao conduzir aplicativos para fazer um loop infinito, dispositivos mal detectados tornam o acesso sub-ideal, por exemplo, lendo byte por byte em vez de Mb por Mb, etc.). Você deve usar a capacidade de filtragem do adb logcat para encontrar essas condições inesperadas. Mas esteja avisado de que essas ferramentas são usadas principalmente por desenvolvedores de aplicativos ou mesmo de plataformas, e às vezes pode ser um pouco complexo, porém, interpretar esses logs. No entanto, 100% dos caras que conseguiram, tentaram ;-)
fonte