Rufen Sie den Wiederherstellungsmodus über die Befehlszeile auf

9

Weiß jemand, ob es eine Möglichkeit gibt, ein Android-Telefon über die Android-Befehlszeile in den Wiederherstellungsmodus zu versetzen?

Hinweis:

Ich NICHT haben adb Zugang.

Ich kenne die magische Einschaltsequenz NICHT , um dies vom Bootloader aus zu tun. Ich habe die üblichen Dinge ausprobiert und nichts funktioniert.

I DO haben Wurzel. (Und kann Befehle direkt auf dem Gerät über einen Terminalemulator eingeben.)

Ich weiß, dass es irgendwie möglich ist, weil Anwendungen wie ROM Manager es tun. Aber wie?

David Given
quelle

Antworten:

11

Im Allgemeinen bietet rebootBinär einen recoverySchalter. Führen Sie nach dem Wechsel zu root den folgenden Befehl aus:

/system/bin/reboot recovery

Dies funktioniert möglicherweise nicht, wenn Ihr Hersteller dies nicht unterstützt. Apps vom Typ ROM Manager verwenden die API von Android, auf die Sie nicht direkt über Terminal Emulator zugreifen können.

Android Quesito
quelle
1
Sie sollten nicht den vollständigen Pfad dafür benötigen reboot, aber das ist genau richtig.
Matthew Read
1
@MatthewRead Yup, der vollständige Pfad wird wirklich nicht benötigt. :) Aber ich wollte keine Chance lassen, falls jemand die PATHVariable durcheinander bringt.
Android Quesito
@ Otech1408 Dazu benötigen Sie ein gerootetes Gerät.
Onik
auf nicht gerooteten Geräten können Sie dies durch adb erreichen:adb reboot recovery
geteilt durch Null
Möglicherweise müssen Sie das suTerminal eingeben, um Root-Zugriff zu erhalten, bevor Sie es ausführen können reboot recovery.
Vishal Biswas
2

Ich habe den folgenden Befehl auf Android 5.0 und 6.0.1, CM 14 und Android 8.1.0 mit ordnungsgemäßem Herunterfahren und Neustart zur Wiederherstellung getestet:

su -c 'svc power reboot recovery'

Es funktionierte auch unter Android 4.4.2, aber das Herunterfahren schien auf niedrigem Niveau zu sein. Es erfordert jedoch Root-Zugriff.

Wenn Sie Android KitKat oder höher * ausführen und über Root-Zugriff verfügen, können Sie diesen Befehl alternativ in einer Terminal-App ausführen:

su -c 'setprop sys.powerctl reboot,recovery'
  • Ersetzen Sie su -c durch die adb-Shell , um den Befehl mit auszuführen
  • Ersetzen Sie den Neustart und die Wiederherstellung durch einen Neustart, um das Gerät neu zu starten
  • Ersetzen Sie den Neustart und die Wiederherstellung durch Herunterfahren, um das Gerät herunterzufahren

Beachten Sie, dass alle diese setpropBefehle ein Herunterfahren / Neustarten auf niedriger Ebene (unrein; nicht ordnungsgemäß) durchführen würden.

In Android Lollipop und höher * können Sie auch Folgendes versuchen:

su -c 'setprop ctl.start pre-recovery'

Für Android Jelly Bean und darunter scheint die Antwort von SS-3 die einzig mögliche Lösung zu sein.


* Die letzte Version, auf der der Befehl getestet wird, ist Android 6.0.1.

Feuerlord
quelle
Ich nehme an, CMs su-Binärdatei hat kein -cArgument. Wechseln Sie also zuerst zum Root-Benutzer suund führen Sie dann den angegebenen Befehl aus
Firelord
1
Ich glaube, es lief entweder Cupcake oder Donut. Unabhängig davon ging es vor langer Zeit zum großen Telefon-Recyling-Center am Himmel. Danke trotzdem!
David gegeben
1
@DavidGiven: Es mag ziemlich albern erscheinen, dass ich eine alte Frage wiederbelebt habe, aber ich habe das getan, weil Sie eine bestimmte Android-Version nicht erwähnt haben, also habe ich versucht, sie als Gelegenheit zu nutzen, um zu erwähnen, was nicht nur für Sie, sondern auch für andere funktionieren würde und aufeinanderfolgende Android-Versionen. Es hat mir auch geholfen, zu vermeiden, dass eine doppelte Frage gestellt wird, aber für andere Android-Versionen.
Feuerlord
1
Die "su -c 'SVC Power Reboot Recovery'" funktioniert auf meinem cm14.1 (Android 7.1) basierten ROM. Es wird ordnungsgemäß heruntergefahren, bevor es zur Wiederherstellung neu gestartet wird. Dies ist die beste Lösung, die mir bisher begegnet ist.
scharf