Wie funktioniert update.zip?

14

update.zip s sind Pakete, die Ersatzteile für Teile eines Android-Systems enthalten. Die Pakete enthalten alle Dateien, die durch das Update ersetzt werden sollen, und ein Skript, das die Ersetzung durchführt, wenn es ausgeführt wird.

Update.zips können aus OTA-Updates stammen. In einigen Fällen ist es jedoch erforderlich, eine update.zip manuell herunterzuladen und in einem speziellen Ordner abzulegen. Die Datei update.zip wird jedoch weiterhin auf dieselbe Weise erkannt und angewendet.

Welcher Teil von Android erkennt und verarbeitet update.zips?

Enth
quelle

Antworten:

18

update.zip werden von Android nie berührt.

In diesem Archiv befindet sich ein Skript, das von der Recovery-Laufzeit analysiert und interpretiert wird.

Die Wiederherstellung öffnet bei der Ausführung das Archiv durch Entpacken in ein temporäres Verzeichnis, liest das Skript, benennt update-scriptes treffend , analysiert es und führt basierend auf der Syntax eine Funktion aus, die Recovery bekannt ist wenige:

  • montieren /system und andere Dateisysteme und führen Lese - / Schreibvorgänge durch, einschließlich des Kopierens des Kernels oder einer apk oder sogar des Formatierens einer Partition usw
  • Überprüf den build.prop für bestimmte Eigenschaften, wie Gerät, Hersteller usw
  • Druckanzeige auf dem Bildschirm, Fortschrittsinformationen usw

Es ist so ziemlich ein De-facto-Standard, der in Android Open Source Project (AOSP) integriert ist.

ClockworkMod, TWRP sind Ableitungen der Barebones-Version, die in AOSP enthalten ist, mit zusätzlichen Verbesserungen, z. B. Touchscreen-Eingabe.

t0mm13b
quelle
+1 sehr interessant. Die Wiederherstellung ist also nicht Teil von Android selbst? Was fällt darunter? Ein Teil von Linux, eine separate Einheit?
RossC
2
@RossC Die richtige Wiederherstellungsumgebung befindet sich auf einer separaten /recoveryPartition (einige Hersteller tun dies aus unbekannten Gründen nicht, Pseudo-Wiederherstellung). Barebones beschränken Android, abhängig von der Wiederherstellung der Vorräte, beschränkten Shell- und CWM / TWRP-Möglichkeiten, die neben Root-Rechten mehr bieten . Das Vergnügen eines echten Modder ist ein Gerät, das über eine separate Partition zur Wiederherstellung verfügt.
t0mm13b
1
/recoverysieht nicht aus wie eine Partition. Unter Linux ist das nur ein Verzeichnis. Es könnte eine gemountete Partition sein - aber es ist immer noch nur ein Verzeichnis. Ich sage das, weil es ein weit verbreitetes Missverständnis ist, das ich bei Android-Nutzern bemerkt habe.
Jcora
@yannbane - probieren Sie dies aus cat /proc/mtdoder schauen Sie sich an /proc/partitions, wie der Bootloader funktioniert. Wenn vol dwn gedrückt wird, liest der Bootloader den Kernel /recoveryund lädt ihn in der Kette, um entweder die Standardwiederherstellung oder die benutzerdefinierte Wiederherstellung aufzurufen . Es ist kein Linux ....
t0mm13b