Neue Android 11-Geräte unterstützen möglicherweise kein virtuelles A/B für nahtlose Updates

click fraud protection

Google machte einen Rückzieher bei der Forderung, dass OEMs virtuelles A/B auf neuen Android 11-Geräten unterstützen müssten, was den Weg für nahtlose Updates geebnet hätte.

Update 1 (25.01.2021 um 14:06 Uhr ET): Vor der Veröffentlichung von Android 11 scheint Google von der Anforderung, dass Startgeräte virtuelles A/B unterstützen müssen, einen Rückzieher gemacht zu haben. Klicken Sie hier für weitere Informationen. Der am 7. April 2021 veröffentlichte Artikel ist unten aufgeführt.

Mit Android 7.0 Nougat hat Google ein Partitionsschema eingeführt, das Software-Updates beschleunigen soll. In Nougat hat Google Unterstützung für das Duplizieren bestimmter Partitionen hinzugefügt, sodass inaktive Partitionen im Hintergrund aktualisiert und dann durch einen schnellen Neustart in aktive umgewandelt werden können. Das „A/B-Partition“-Setup ermöglicht „nahtlose Updates“ auf unterstützten Android-Geräten stattfinden, ähnlich wie Googles Chrome OS. Allerdings hat Google nie die Verwendung von A/B-Partitionen vorgeschrieben, weshalb es viele Geräte gibt, die keine nahtlosen Updates unterstützen. Das könnte sich jedoch mit Android 11 ändern, da Google die Unterstützung virtueller A/B-Partitionen für neu eingeführte Geräte zur Pflicht macht.

Zur Erläuterung: A/B-Partitionen beziehen sich auf die Gruppe der schreibgeschützten Partitionen, die dupliziert werden. Zu den duplizierten Partitionen gehören typischerweise die System-, Hersteller-, Boot- und Produktpartitionen. Wenn das Telefon ein Update herunterlädt, patcht der Updater die inaktiven Partitionen (einen „Slot“) im Hintergrund. Sobald das Update auf den inaktiven Steckplatz angewendet wurde, wird der Benutzer aufgefordert, sein Gerät neu zu starten. Wenn der Benutzer sein Gerät neu startet, wird der inaktive Steckplatz mit dem aktiven Steckplatz getauscht und der Aktualisierungsvorgang abgeschlossen. Der zuvor aktive Steckplatz bleibt unberührt, wenn beim Booten des neu aktualisierten Steckplatzes ein Problem auftritt. Beim nächsten Update wiederholt sich dieser Vorgang. Wenn Sie an einer eher technischen Erklärung interessiert sind, Weitere Informationen finden Sie in der Entwicklerdokumentation von Google auf A/B-Partitionen.

Im Gegensatz dazu wenden Geräte ohne A/B-Partitionen, wie das Samsung Galaxy S20, OPPO Find X2 und viele andere, Updates über einen speziellen Updater in einem Wiederherstellungsprozess an. Dadurch wird der Benutzer von Android ausgeschlossen und kann sein Gerät mehrere Minuten lang nicht verwenden, sodass ihm möglicherweise wichtige Benachrichtigungen, Anrufe oder Textnachrichten entgehen. Google ist davon überzeugt, dass die Vereinfachung des Update-Prozesses dazu führt, dass mehr Leute ein Update tatsächlich nutzen, sobald es eingeführt wird. tatsächlich, im Mai 2017, Google hat das gefunden Ein höherer Prozentsatz der Pixel-Benutzer als der Nexus-Benutzer führte das neueste Sicherheitsupdate aus. Natürlich kann der Benutzer Updates so planen, dass sie stattfinden, wenn er sein Gerät nicht aktiv nutzt, aber viele Benutzer aktualisieren ihr Gerät einfach nicht, selbst wenn sie dazu aufgefordert werden. Darüber hinaus entgeht dem Benutzer durch den Verzicht auf A/B-Partitionen einer der inhärenten Vorteile: der Schutz vor verpfuschten Systemaktualisierungen.

Zum Beispiel bei Xiaomi Zuerst wurde das Android 10-Update ausgerollt Beim Mi A2 Lite stellten viele Benutzer fest, dass ihre Geräte nicht starteten. Zum Glück verfügt das Mi A2 Lite über A/B-Partitionen für nahtlose Updates Benutzer in unseren Foren gefunden dass sie einen Fastboot-Befehl verwenden könnten, um den Bootloader so einzustellen, dass er den unberührten, zuvor aktiven Satz von Partitionen startet. Somit ermöglichen A/B-Partitionen Benutzern nicht nur einen viel schnelleren Update-Prozess, sondern sie dienen auch als Ausfallsicherheit für verpatzte Updates. OEMs, die keine A/B-Partitionen implementiert haben, können dennoch ihre eigene Methode zum Schutz vor OTA entwickeln Aber warum sollte man sich diese Mühe machen, wenn dieser Schutz Teil des A/B-Designs ist? Partitionen? Als Referenz finden Sie hier eine teilweise (und zugegebenermaßen veraltete) Liste der Geräte, die A/B-Partitionen unterstützen für nahtlose Updates, und hier ist ein Tutorial dazu So überprüfen Sie, ob Ihr eigenes Gerät die Funktion unterstützt.

Es mag rätselhaft erscheinen, warum bestimmte OEMs so etwas mögen Samsung verlangt für ein Smartphone 1.400 US-Dollar, bietet aber keine so raffinierte Funktion an. Der Grund liegt meist im Speicherbereich: OEMs wollen nicht ein paar Gigabyte Speicherplatz opfern, um nahtlose Updates zu unterstützen. Telefone wie das Samsung Galaxy S20 verfügen über eine Tonne von vorinstallierter Software, sodass das Duplizieren von Partitionen wie /system und /product dazu führt, dass viele große Dateien und Anwendungen dupliziert werden. Google hat es geschafft, A/B-Partitionen zu implementieren, ohne allzu große Einbußen beim Speicherplatz hinnehmen zu müssen Dank eines cleveren Tricks um das Problem der Duplizierung großer .odex-Dateien zu umgehen. Ein weiterer Grund, warum sich OEMs möglicherweise dafür entschieden haben, keine A/B-Partitionen zu implementieren, sind die Kosten: Mit Google Schritt halten Laut XDA Recognized Developer erfordern ständige Änderungen an den Partitionsschemata von Android viel Aufwand topjohnwu werde es dir sagen. Sofern OEMs nicht dazu gezwungen werden, werden sich viele nicht die Mühe machen, das zu ändern, was für sie bereits funktioniert.

Letztendlich scheint Google jedoch mit Android 11 das Gesetz festzulegen. Indem sie die Einführung virtueller A/B-Partitionen auf neu eingeführten Geräten erzwungen haben, haben sie so gut wie sichergestellt, dass OEMs nahtlose Updates für ihre Geräte Ende 2020 und 2021 unterstützen müssen. Wie von XDA Recognized Developer entdeckt luca020400, Yifan Hong, ein Software-Ingenieur bei Google im Project Treble-Team, reichte beim AOSP Gerrit einen Commit mit dem Titel „Erfordern Sie Virtual A/B bei R-Starts.“ Der Commit aktualisiert die Vendor Test Suite (VTS), einen automatisierten Test, den alle Geräte bestehen müssen, um als mit Project Treble kompatibel zu gelten. Der neue Test prüft, ob die Systemeigenschaft „ro.virtual_ab.enabled„auf true gesetzt ist und wenn“ro.virtual_ab.retrofit„ ist auf Geräten mit einem Versand-API-Level von 30 oder höher auf „false“ gesetzt. Mit anderen Worten: Dieser Test prüft, ob ein Gerät, das mit Android 11 oder höher gestartet wird, virtuelle A/B-Partitionen unterstützt. „Virtuelle“ A/B-Partitionen wurden mit Android 10 neben „dynamischen Partitionen“ eingeführt, bei denen es sich um dynamisch in der Größe veränderbare Partitionen handelt. Sie basieren auf dem gleichen Konzept wie normale A/B-Partitionen, außer dass ihre Größe frei geändert werden kann.

Wenn ein Gerät, das mit Android 11 startet, keine virtuellen A/B-Partitionen unterstützt, schlägt VTS fehl. Wenn das Gerät VTS nicht besteht, kann es nicht mit Google Mobile Services ausgeliefert werden. Mit anderen Worten: Google hat OEMs faktisch dazu verpflichtet, virtuelle A/B-Partitionen und damit auch nahtlose Updates zu unterstützen.


Update: Virtual A/B ist für Android 11 nicht erforderlich

Als wir im April zum ersten Mal berichteten, dass Google von allen Android 11-Startgeräten verlangt, dass sie das unterstützen virtueller A/B-Update-Mechanismus, gab es große Aufregung, weil es endlich dazu geführt hätte, dass Samsung-Handys nahtlose Updates hätten. Leider stellt sich heraus, dass Google beschlossen hat, die virtuelle A/B-Unterstützung nicht zur Anforderung zu machen. Android 11 Kompatibilitätsdefinitionsdokument (CDD) lautet derzeit „Geräteimplementierungen SOLLTEN A/B-Systemaktualisierungen unterstützen“ statt „MÜSSEN“ unterstützen. Es scheint, dass Google irgendwann vor der Veröffentlichung von Android 11 beschlossen hat, seine Entscheidung, virtuelle A/B-Unterstützung zu verlangen, zurückzunehmen, wahrscheinlich um im Auftrag mehrerer OEMs. Dies geschieht recht häufig, wird jedoch nie der Öffentlichkeit mitgeteilt, da nur der endgültige Entwurf des CDD veröffentlicht wird online.