Como posso determinar a causa de reinicializações aleatórias do dispositivo?

30

Depois de ficar irritado com a minha ROM anterior, pensei em instalar o ICS no meu SGS2 (até o CM9 sair). Mas, infelizmente, agora é reiniciado várias vezes ao dia sem qualquer motivo real. O dispositivo está deitado sobre a mesa, sem fazer nada e, de vez em quando, a tela é ligada e eu posso vê-lo reiniciar.

Então, como eu começaria a analisar esse problema? Obviamente, eu poderia tentar exibir ROMs diferentes como um louco até que o problema se resolvesse, mas eu preferiria uma abordagem mais sensata.

Der Hochstapler
fonte

Respostas:

6

Você pode instalar o SDK do Android e usar o DDMS para monitorar o logcat. O que ocorre com um logcat, é limpo quando o dispositivo é reiniciado, mas você pode ter uma idéia do que está travando se estiver monitorando-o antes de reiniciar.

Provavelmente também é possível encontrar noturnos CM9 não oficiais para o Galaxy S2, mas não tenho certeza de quais problemas ainda existem para esse dispositivo.

Ryan Conrad
fonte
Para meu conhecimento, estas são as questões CM9 alfa atuais: teamhacksung.org/wiki/index.php/...
Der Hochstapler
14

Eu tive um problema semelhante de reinicialização aleatória e, após uma dessas reinicializações, liguei o telefone ao meu laptop e executei "adb bugreport" nele. Eu peguei o que parecia ser uma informação útil e a anexei ao bug. Então, acho que pelo menos algumas informações de log sobrevivem a uma reinicialização.

Aqui está o erro: http://code.google.com/p/android/issues/detail?id=24118

offby1
fonte
Oh uau, isso gera uma tonelada de saída. Vou executá-lo novamente após a próxima reinicialização e ver o que ele sai.
Der Hochstapler
Eu fiquei louco tentando descobrir uma reinicialização aleatória em um dos meus telefones de teste. Eu não sou o OP, mas isso é extremamente útil, obrigado por publicá-lo!
Amy
11
Minha resposta tem três anos. Desde então, o Android conseguiu uma maneira integrada de enviar (o que eu assumo são) relatórios de falhas: Settings/ About phone/ Send feedback about this device. Eu usei isso várias vezes no Android 5.0 e, quando o 5.1 foi lançado, recebi uma pequena nota do Google dizendo "obrigado por nos ajudar a tornar o 5.1 mais estável" ... e ele não foi reiniciado desde que atualizei para o 5.1!
precisa saber é o seguinte
7

A primeira coisa que eu tentaria fazer é recuperar os logs dos erros via ADB e / ou despejos de memória.

A recuperação dos logs é complicada, pois o cache do log é apagado na reinicialização. Se o telefone reiniciar, mesmo sentado em um carregador, tente executar adb logcatcontinuamente (você precisará de drivers USB SDK e Android instalados e configurados no seu PC.) Quando o telefone reiniciar, verifique as últimas páginas da janela de prompt de comando quanto a erros. ou anormalidades.

Se você não conseguir reproduzir as reinicializações enquanto o telefone estiver conectado ao USB, sugiro instalar um aplicativo como o aLogcat e configurá-lo para gravar registros no cartão SD em um intervalo. Espero que você tenha sorte e pegue os erros dessa maneira.

Você também pode tentar extrair os despejos de memória usando os seguintes comandos:

su  
cat /proc/last_kmsg > /mnt/sdcard/last_kmsg

Isso deve criar um arquivo chamado "last_kmsg" no seu cartão SD que contém as últimas mensagens de depuração do kernel. Abra-o com qualquer editor de texto e veja se algo óbvio aparece.

Chahk
fonte
2
Estou usando o shell do ADB incorretamente ou /proc/last_kmsgnão existe no meu telefone.
Der Hochstapler
@OliverSalzburg dê uma olhada em stackoverflow.com/a/10525021/529977 /data/dontpanic
childno͡.de
3

Você pode experimentar o aLogrec e, se quiser, a versão doar. Escrito pelo mesmo programador que escreveu o aLogcat, ele grava continuamente o log (logcat) no seu cartão SD. Não testei como ele reage com a reinicialização de uma falha, mas testei com uma reinicialização manual e o log gravado sobreviveu à reinicialização e pude ver a sequência de desligamento sendo registrada. Uma desvantagem é que o log não inclui registros de data e hora.

O meu T-mobile S II estava travando (reiniciando) ao usar os recursos básicos - encerrar uma chamada (uma vez), tirar uma foto (uma vez) ou usar a navegação (3 vezes). Atualizei do ICS 4.0.3 para 4.0.4. Até agora tem sido bom. Eu gostaria de saber sobre o aLogrec enquanto estava reinicializando.

Skurfur
fonte
supostamente não funciona no 4.x de acordo com os comentários
endolith 20/10
11
O Logcat Extreme funciona em 4.x. play.google.com/store/apps/details?id=scd.lcex&hl=en
endolith
1

Eu tive o mesmo problema, mas nos poucos minutos que ele me dava cada vez que experimentava, descobri que ele parava de funcionar se eu fosse à atualização de rede nas configurações, mesmo que não haja nenhuma atualização disponível. Agora funciona, mas eu precisava irritá-lo toda vez.

Andrew Brackenbury
fonte