Twitter verringert mit App Bundles die Größe seiner App um ein Drittel
Hier erfährst du, wie Twitter mithilfe von Android App Bundles seine App vereinfacht und ihre Größe reduziert.
Hintergrund
Dem Team von Twitter ist es sehr wichtig, dass die App schlank und einfach zu installieren ist, da große Apps insbesondere in Schwellenländern mit unzuverlässigen Datenverbindungen problematisch sein können. „Uns ist wichtig, dass jeder Nutzer an jedem Ort Twitter verwenden kann, insbesondere auch in Schwellenländern, aber wir mussten feststellen, dass die APK-Größe für viele ein Problem war“, erinnert sich César Puerta, Senior Staff Software Engineer bei Twitter. „Mit App Bundles konnten wir die Größe der App ohne viel Aufwand erheblich reduzieren.“
Vorgehensweise
Früher teilte Twitter seine App manuell in vier ABIs auf, um die Größe zu reduzieren. Aber mit App Bundle war dies wesentlich einfacher und effizienter. Daher war das Team sehr an dem Umstieg interessiert.
Da die Anmeldung für die App-Signatur von Google Play eine Voraussetzung für die Nutzung von App Bundle ist, hat sich Twitter die Funktion gründlich angesehen, um sicherzugehen, dass sie die internen Sicherheitsstandards von Twitter erfüllt. „Wir hatten dafür vorab viel Zeit eingeplant“, so Puerta. Aber „als die endgültige Version der App Bundles zur Verfügung stand, war die Einführung recht einfach und die App funktionierte problemlos.“
Das Team nutzte während der Entwicklung das Programm „bundletool“, um die APKs für das QA-Team zu extrahieren. Außerdem ließ es die App Bundles von einer großen Nutzergruppe testen, bevor die Änderung allgemein veröffentlicht wurde. Dieser Prozess funktionierte so gut, dass das Team später seine interne Dogfood-App in den Play Store verschob, da so noch mehr Nutzer mittesten konnten und eine schnellere Problemerkennung möglich war.
Ergebnisse
Nach dem Umstieg veröffentlichte das Team die neue modularisierte Version der App für die 13,6 Millionen Nutzer. Das funktionierte reibungslos. Da die Releases von Twitter schon vorher automatisiert worden waren, veränderte sich der Veröffentlichungsprozess kaum. Aber es gab einen unerwarteten Vorteil: „Da wir nur eine Versions-ID pro Release statt wie bisher vier (für die ABIs) verwalten mussten, konnten wir unsere Messwerte konsolidieren“, berichtet Puerta.
Noch wichtiger war allerdings, dass sie im Durchschnitt 30 bis 40 % der App-Größe einsparen konnten — zusätzlich zu der schon durch die ABIs erzielten Reduzierung. Dazu nutzten sie unter anderem ein Funktionsmodul, um eine große native Bibliothek bereitzustellen, die 3 MB pro ABI umfasste und nur auf einigen wenigen Geräten benötigt wurde.
Als Nächstes plant Twitter, seine App zum Teilen von Live-Videos, Periscope, ebenfalls zu App Bundles zu migrieren. Das Team möchte außerdem die gesamte Twitter-App modularisieren. „Wenn wir auf vollständig isolierte Funktionsmodule umgestiegen sind, werden wir wahrscheinlich verschiedene Funktionen dynamisch bereitstellen“, so Puerta und er fügt hinzu, dass dieser Prozess allerdings noch sechs bis zwölf Monate dauern kann. Puerta hofft auch, dass die Entwickler auf diese Weise die Module für Twitter und Periscope wiederverwenden können, wodurch sie viel Zeit und unnötige Duplikate sparen würden.
Jetzt starten
Alle App- und Spieleentwickler können Android App Bundles nutzen. Hier erfährst du, wie das geht.