Wie kann ich die Ursache für zufällige Neustarts von Geräten ermitteln?

30

Nachdem ich mich über mein vorheriges ROM geärgert hatte, dachte ich, ich würde ICS auf meinem SGS2 installieren (bis CM9 herauskommt). Leider wird es jetzt mehrmals am Tag ohne wirklichen Grund neu gestartet. Das Gerät liegt nur auf dem Tisch und tut nichts. Hin und wieder schaltet sich der Bildschirm ein und ich kann beobachten, wie es neu gestartet wird.

Wie würde ich anfangen, dieses Problem zu analysieren? Natürlich könnte ich versuchen, verschiedene ROMs wie ein Verrückter zu flashen, bis sich das Problem von selbst löst, aber ich würde einen vernünftigeren Ansatz vorziehen.

Der Hochstapler
quelle

Antworten:

6

Sie können das Android SDK installieren und DDMS verwenden , um den Logcat zu überwachen. Die Sache mit einem Logcat ist, dass es gelöscht wird, wenn das Gerät neu gestartet wird, aber Sie können möglicherweise eine Vorstellung davon bekommen, was abstürzt, wenn Sie es überwachen, bevor es neu gestartet wird.

Sie können wahrscheinlich auch inoffizielle CM9-Nachthemden für das Galaxy S2 finden, aber ich bin nicht sicher, welche Probleme für dieses Gerät noch bestehen.

Ryan Conrad
quelle
Mein Wissen sind dies die aktuellen CM9 Alpha Fragen: teamhacksung.org/wiki/index.php/...
Der Hochstapler
14

Ich hatte ein ähnliches Problem beim zufälligen Neustart und nach einem solchen Neustart habe ich das Telefon an meinen Laptop angeschlossen und "adb bugreport" darauf ausgeführt. Ich erhielt nützliche Informationen und fügte sie dem Fehler hinzu. Ich denke also, dass zumindest einige Protokollinformationen einen Neustart überstehen.

Hier ist der Bug, übrigens: http://code.google.com/p/android/issues/detail?id=24118

offby1
quelle
Oh wow, das erzeugt eine Menge Output. Ich werde es nach dem nächsten Neustart erneut ausführen und sehen, was es ausspuckt.
Der Hochstapler
Ich war verrückt nach einem zufälligen Neustart auf einem meiner Testtelefone. Ich bin nicht der OP, aber das ist sehr hilfreich, danke für das Posten!
Amy
1
Meine Antwort ist drei Jahre alt. Seitdem hat Android eine integrierte Möglichkeit der Einreichung bekommen (was ich annehme) sind Crash - Berichte: Settings/ About phone/ Send feedback about this device. Ich habe das einige Male auf Android 5.0 verwendet und als 5.1 herauskam, bekam ich eine kleine Notiz von Google mit den Worten "Danke, dass Sie uns geholfen haben, 5.1 stabiler zu machen" ... und es wurde nicht neu gestartet, seit ich auf 5.1 aktualisiert habe!
offby1
7

Das erste, was ich versuchen würde, ist das Abrufen der Protokolle der Fehler über ADB und / oder Absturzabbilder.

Das Abrufen der Protokolle ist schwierig, da der Protokollcache beim Neustart gelöscht wird. Wenn das Telefon auch dann neu gestartet wird, wenn Sie sich auf einem Ladegerät befinden, versuchen adb logcatSie es fortlaufend (auf Ihrem PC müssen Android SDK- und USB-Treiber installiert und konfiguriert sein). Überprüfen Sie nach dem Neustart des Telefons die letzten Seiten der Eingabeaufforderung auf Fehler oder Anomalien.

Wenn Sie die Neustarts nicht reproduzieren können, während das Telefon an USB angeschlossen ist, empfehle ich, eine App wie aLogcat zu installieren und so einzurichten, dass in bestimmten Abständen Protokolle auf die SD-Karte geschrieben werden. Hoffentlich haben Sie Glück und können die Fehler auf diese Weise abfangen.

Sie können auch versuchen, die Absturzabbilder mit den folgenden Befehlen zu entfernen:

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

Dies sollte eine Datei mit dem Namen "last_kmsg" auf Ihrer SD-Karte erstellen, die die letzten Debug-Meldungen des Kernels enthält. Öffnen Sie es mit einem beliebigen Texteditor und prüfen Sie, ob sich etwas Offensichtliches ergibt.

Chahk
quelle
2
Entweder verwende ich die ADB-Shell falsch oder sie /proc/last_kmsgist auf meinem Telefon nicht vorhanden.
Der Hochstapler
@OliverSalzburg werfen Sie einen Blick auf stackoverflow.com/a/10525021/529977 /data/dontpanic
childno͡.de
3

Sie können aLogrec ausprobieren, und wenn es Ihnen gefällt, die Spendenversion. Es wurde von demselben Programmierer geschrieben, der auch aLogcat geschrieben hat, und zeichnet das Protokoll (logcat) kontinuierlich auf Ihrer SD-Karte auf. Ich habe es nicht getestet, um festzustellen, wie es mit einem Neustart nach einem Absturz reagiert, aber ich habe es mit einem manuellen Neustart getestet und das aufgezeichnete Protokoll hat den Neustart überstanden und konnte feststellen, dass die Reihenfolge des Herunterfahrens protokolliert wird. Ein Nachteil ist, dass das Protokoll keine Zeitstempel enthält.

Mein T-Mobile S II stürzte ab (Neustart), wenn grundlegende Funktionen verwendet wurden - ein Anruf wurde beendet (einmal), ein Bild wurde aufgenommen (einmal) oder die Navigation wurde verwendet (dreimal). Ich habe ein Upgrade von ICS 4.0.3 auf 4.0.4 durchgeführt. Bisher war es gut. Ich wünschte, ich hätte über aLogrec gewusst, während ich diese Neustarts hatte.

Skurfur
quelle
funktioniert angeblich nicht in 4.x nach den Bewertungen
Endolith
1
Logcat Extreme funktioniert jedoch in 4.x. play.google.com/store/apps/details?id=scd.lcex&hl=de
endolith
1

Ich hatte das gleiche Problem, aber in den wenigen Minuten, die es mir bei jedem Experiment gab, stellte ich fest, dass es nicht mehr abstürzte, wenn ich in den Einstellungen zum Netzwerk-Update ging, obwohl kein Update verfügbar ist. Es funktioniert jetzt, aber ich würde es ärgerlich finden, wenn ich das jedes Mal tun müsste.

Andrew Brackenbury
quelle