Was sind AAB-Dateien für Android und was ist der Unterschied zu APKs?
AAB ist hier – und Google schafft die APK-Dateien ab. Ab August 2021 müssen Entwickler neue Android-Apps im AAB-Format in den Google Play Store laden. Aber was ist eigentlich der Unterschied zwischen AAB und APK? Und ist AAB besser oder schlechter als APK?
Seit dem Start von Android vor über zehn Jahren waren APK-Dateien DAS universelle Format für Apps. Egal, ob Entwickler oder Nutzer, ob Google Play Store, APKMirror oder EFNet lud – es waren immer APKs. Für Developer werden AABs nun zur Pflicht – und für Android-Nutzer die APKs komplizierter.
Die Pflicht zu AAB gilt ab August 2021 für alle neuen Apps. Updates für bestehende Apps können Entwickler nach wie vor im APK-Format hochladen – hier ändert sich also zunächst nichts.
Was sind AAB-Dateien eigentlich?
"AAB" steht für Android App Bundle. In der AAB-Datei ist der gesamte Programmcode der Android-App hinterlegt. Sobald die Entwicklung abgeschlossen ist, lädt der Developer seine App also fortan im AAB-Format in den Google Play Store hoch – und Ihr ladet sie von dort wie gewohnt auf Euer Smartphone.
Auf den ersten Blick ändert sich also gar nichts – und selbst auf den zweiten Blick nicht. Denn wenn Ihr im Google Play Store auf "Download" klickt, lädt Euer Smartphone nach wie vor eine APK-Datei herunter. Wozu also der ganze Quatsch?
Was ist der Unterschied zwischen AAB- und APK-Dateien?
AAB-Dateien sind maßgeschneidert
Der Unterschied zwischen APK- und AAB-Dateien besteht in den sogenannten Ressourcen. Als Ressourcen bezeichnet man in einer App alles, was kein Programmiercode ist, also beispielsweise Bilder, Sprachdateien oder Musik. Wenn Ihr nun auf den "Download"-Button einer App im Play Store drückt, dann schickt Euch Google eine aus der AAB-Datei für Euer Endgerät maßgeschneiderte APK-Datei mit nur den von Euch benötigten Ressourcen.
Euer Smartphone hat nur Full-HD+-Auflösung? Dann kriegt Ihr eine APK ohne 4K-Material. Ihr habt als Gerätesprache Englisch und Deutsch ausgewählt? Vermutlich werdet Ihr kein Suomi benötigen. Mit Hilfe von Googles Werkzeug bundletool lassen sich AAB-Dateien übrigens auch lokal in APKs umwandeln.
Signieren durch Google statt Developer
Ein weiterer großer Unterschied besteht in der Signatur der Apps. Früher waren es immer die Entwickler einer App selbst, die diese mit ihrem Developer-Key signierten. Anhand dieses Keys kann bei der Installation auf dem Smartphone überprüft werden, ob die App kompromittiert wurde und beispielsweise Malware enthält – oder etwa für sonst kostenpflichtige Features freigeschaltet wurde.
In Zukunft signiert nicht der Entwickler die APKs, sondern Google – nämlich beim Generieren der APK-Dateien aus den AABs. Die Schlüssel liegen damit logischerweise künftig auch nicht mehr bei den Entwicklern, sondern bei Google.
Sind AAB-Dateien besser als APKs?
Kleinere Dateigrößen als APKs
Der erste große Vorteil von AAB-Dateien liegt damit auf der Hand: Die so generierten APKs sind kleiner. Durchschnittlich 35 Prozent sollen sich so einsparen lassen, schrieb Google im Oktober 2018. Das klingt auf den ersten Blick nach nicht viel, könnte sich inklusive der zahlreichen Updates für Apps aber doch irgendwann läppern.
Besserer Schutz für Apps
Ein weiterer Vorteil, vor allem für die Entwickler, ist die bessere Sicherheit. Es wird künftig wohl schwieriger werden, Apps zu modifizieren, die Mod-Szene dürfte davon wenig begeistert sein. Wer weiß, vielleicht reduziert sich damit auch mal die Zahl der Cheater bei AmongUs, auch wenn ich's bislang nicht so recht glauben mag.
Übrigens dürften mit den AABs auch die Lite- und Pro-Versionen im Play Store aussterben. Früher war es möglich, eine kostenpflichtige Pro-Version nach dem Kauf dank gleicher Signatur quasi als Update über die Lite-Version zu installieren. Mit AABs und der Signierung durch Google ist das nicht mehr möglich – stattdessen müssen Entwickler auf In-App-Käufe umschwenken.
Einfachere Updates & Entwicklung
Wenn die APKs je nach Nutzer beziehungsweise dessen Hardware individuell zusammengebaut werden, bringt das Vorteile für die Entwickler. Wie NDTV berichtet, lassen sich dank AAB-Format Updates zu ganz bestimmten Zeitpunkten an bestimmte Geräte ausspielen. Das ist gerade bei der enormen Fragmentierung von Android ein Vorteil und könnte künftig kaputte Updates verhindern beziehungsweise deren Auswirkungen abmildern.
Auch das Entwickeln selbst wird einfacher. In der Vergangenheit haben viele Entwickler bereits mehrere, an verschiedene Regionen, Sprachen oder Prozessorarchitekturen angepasste APK-Versionen für Ihre App in den Play Store hochgeladen. Künftig müssen die Entwickler nur noch eine einzige, universelle AAB-Datei hochladen.
Sind AAB-Dateien schlechter als APKs?
AAB-Dateien und das Sideloading-Chaos
Allerdings gibt es auch Nachteile, insbesondere durch die zuvor angesprochenen Signaturen. Ihr wollt mal eben über APKMirror die neue WhatsApp-Beta herunterladen und neue Features ausprobieren? Forget it, denn APKMirror nutzt hier eine andere Signatur als der Google Play Store. Das Sideloading von Apps über verschiedene Third-Party-Appstores könnte in Zukunft ein Alptraum werden. Hallo, Windows 11 mit APK- und ohne AAB-Support.
Klar könnt Ihr die App einfach deinstallieren und aus anderer Quelle neu auf Euer Smartphone installieren. Aber dann müsst Ihr – je nach App mit mehr oder weniger Aufwand – sämtliche Daten backuppen und anschließend wieder einspielen.
AAB gives Power to the Google
Auch dass künftig die Signaturen bei Google liegen, kann man kritisch sehen. Sollten hier jemals die Server gehackt werden, wären auf einen Schlag alle Apps unsicher. Und wie die Kollegen von XDA-Developers ausführen: Google hat durch die Developer Keys auch die Macht, Apps eigenmächtig zu verändern. Sollte theoretisch also mal eine Regierung Google die Daumenschrauben anlegen, könnte man ohne das Wissen der Entwickler eine Hintertür in einen ansonsten sicheren Messenger einbauen.
Ja, Google legt enorm viel Wert auf Sicherheit. Und ja, Google zieht sich eher aus einem Markt zurück als sich den moralisch zweifelhaften Wünschen der dortigen Regierung zu beugen. Aber es steht eben fest: Google bekommt mit den AAB-Dateien einfach mehr Macht. Zu diesem Thema gibt es auf StackOverFlow auch eine interessante Diskussion.
Bugfixing wird schwieriger
Ein weiterer Nachteil betrifft noch die App-Entwickler selbst und das Beheben von Bugs, wie der Entwickler Mark Murphy bei Commonsware schreibt. Hat ein einzelner User etwa für den Entwickler nicht reproduzierbare Probleme mit einer App, gab es bislang ein einfaches Mittel: App anpassen, an den User schicken, diesen die App damit updaten lassen und hoffen, dass der Fehler weg ist. Das war allerdings nur möglich, weil die Entwickler die Apps selbst signieren konnten.
Auf Medium.com hat übrigens der Android Developer Advocate Wojtek Kaliciński Stellung zu vielen der obengenannten und weiteren Kritikpunkten bezogen.
AAB: Yay or Nay?
Unterm Strich dürfte die Pflicht zu AAB für die meisten User nicht viel ändern – sonst hätten wir davon schon etwas gemerkt. Schließlich wird bereits ein großer Teil der Top-1000-Apps im Google Play Store von deren Developern als AAB hochgeladen – obwohl dazu gar keine Pflicht besteht.
Aber den Freaks, den Bastlern und den einen oder anderen Entwicklern könnte das AAB-Format doch den Spaß an Android verderben. Immerhin: Google ist nicht Apple, und es nach wie vor möglich, Apps außerhalb des Play Store zu zertifizeren. Dem Sideloading hat Google damit (vorerst) noch keinen Riegel vorgeschoben. Aber Mountain View arbeitet schwer daran, die Monopolstellung des Google Play Store einzuzementieren.
Waaass? Das ist ja eine Katastrophe für mod-freaks wie mich!!! Hoffentlich wird alles gut werden...
Amüsant, ich habe von AAB gelesen aber durch diesen Artikel den Sinn dahinter wirklich verstanden. Und der Abschnitt mit Win11 ist halt schon traurig amüsant. Wir schauen was kommt! Fuchsia 🤔
Hört sich so sinnvoll an. Abwarten und Tee trinken