Facebook ändert Android-App nach Erkenntnissen aus Afrika-Besuch
Facebook hat es sich zum Ziel gesetzt, Menschen mit dem Internet zu verbinden, die bisher nicht die Gelegenheit dazu hatten. Da diese Menschen allerdings auch nicht die technischen Grundlagen haben, um beispielsweise Apps nach Belieben zu installieren und zu nutzen, arbeitet Facebook auch an der Verbesserung dieser. Schlanke Apps mit wenig Datenhunger sollen dafür sorgen, dass sie auch auf schwachen Geräten genutzt werden können und gleichzeitig weniger Daten verbrauchen. Nur so lässt sich eine Nutzung in Entwicklungsländern realisieren.
Alex Sourov hat im Facebook Engineering Blog einen ausführlichen Artikel verfasst, wie Facebook vorgeht, um das Ganze zu verwirklichen. Das gibt einen schönen Einblick, der auch einmal aufzeigt, dass eben mehr dahinter steckt als einfach nur eine App auf den Markt zu schmeißen. Berücksichtigt werden müssen die Performance auf älteren Geräten, der Speicherplatz, den die App benötigt, der Datenverbrauch und wie mit Netzwerkfehlern umgegangen wird.
Beim Starten der App wird hier nun so vorgegangen, dass die einzelnen Komponenten nicht mehr gleichzeitig laden, sondern hintereinander, in Einzelfällen sogar erst dann, wenn sie tatsächlich benötigt werden. Das erhöht die Startgeschwindigkeit, schließlich will keiner ewig warten, bis sich die App als betriebsbereit zeigt. So ist auch auf älteren Geräten ohne größere Verzögerung die Nutzung der App möglich.
Das Problem mit dem Speicherplatz hat Facebook durch Erstellung verschiedener Versionen der App realisiert. So werden nicht mehr alle Displaygrößen mit einer App bedient, sondern es wird die App ausgeliefert, die zum Gerät passt. Kann man im Play Store so machen, bedeutet zwangsläufig aber auch, dass man mehrere Apps pflegen muss, was vor allem bei Design-Änderungen aufwändig sein kann. Aber, so konnten 65% der App-Größe eingespart werden. Das ist durchaus beachtlich.
Mobile Datennutzung ist teuer. Egal ob hier oder in Ländern, wo dies noch nicht so verbreitet ist. Um hohen Kosten bei der Nutzung der App entgegenzuwirken, hat Facebook den Datenhunger reduziert. Erreicht wird dies vor allem dadurch, dass Bilder nicht mehr in voller Auflösung geladen werden, wenn sie im Stream angezeigt werden. Das nimmt dem Nutzer nicht die Möglichkeit, ein Bild komplett zu sehen, aber gibt ihm die Möglichkeit zu entscheiden, für welche Bilder er seine Daten nutzen möchte. Außerdem wurde durch die Umwandlung in WebP eine enorme Ersparnis in der Dateigröße erreicht. Auch das Caching wurde für diesen Zweck optimiert.
Die ganze Story, auch was Alex Sourov und Kollegen in Sachen Smartphone-Nutzung in Afrika gelernt haben, könnt Ihr an dieser Stelle nachlesen. Ist ganz interessant und zeigt, dass es oftmals eben mehr ist, als einfach nur eine App zu programmieren.
Soso, dann sollen sie doch bitte mal erklären, wieso man nicht lieber Bandbreite bei der Werbung und bei automatisch abspielenden Videos einspart…
Mehr Akkulaufzeit wäre nett. Bei meinem Nexus 5 hält der Akku bei wenig nutzung nichtmal nen halben Tag wenn ich die FB App installiert habe.
Die erste Facebook-App hatte keine 5 MB; heute sind es fast 40 – da sind „60% Einsparung durch Spar-Version“ nicht viel mehr als Marketing-Blabla…
Wow, endlich wird Facebook mal schlau. Die App ist bisher richtig RAM hungrig. Hoffentlich ändert sich das allgemein und nicht nur für billig Smartphones die es in Afrika gibt. Selbst mein Moto G mit 1GB RAM kommt ins Schleudern, wenn ich Fb installiere.
Um mal ein wenig Werbung für Windows Phone zu machen – dort werden 8.1-Apps so vom Store heruntergeladen, dass sie ausschließlich die Sprachdateien des Nutzers sowie die Grafiken beinhalten, die das Gerät benötigt.
Dahingehend eigentlich schade, dass Apple und Android solche Ansätze nicht von sich aus bieten. Sie bieten tausende kleine unwichtige APIs, aber solche wichtigen Performance-Aspekte überlassen sie den Entwicklern… :/
Ein sehr guter Ansatz. Ich finde das recht interessant, vor allem weil ich beruflich auch als Android Entwickler tätig bin.
Die verschiedenen Versionen der App zu erstellen ist mit dem Gradle Build System (welches im neuen Android Studio standardmäßig verwendet wird) recht einfach.
Das WebP Dateiformat finde ich sehr gut, es hat alle Funktionen von JPG, GIF und PNG vereint. Nur gibt es leider noch nicht so viel Unterstützung dafür, aber wenn man alles innerhalb der App abwickelt, ist das ja kein Problem.
Die aktuelle App gehört auch auf dem Müll! Abgesehen davon was sie eh nicht bzw noch nie konnte. Da muss dringend mal jemand die Google Designrichtlinien lesen.
RAM ist ja nicht so das Problem, aber was Apps generell an Daten mobil übertragen, ist teilweise eine Unverschämtheit. Da gehört den Programmierern der Hintern versohlt (das sage ich als Programmierer). Danke, XML, du A*sch.
Solange man nicht wie früher einstellen kann, dass die neuesten Beiträge standardmäßig angezeigt werden sollen, macht es wenig Sinn, die App zu nutzen.
Seit längerem verursacht die aktuelle FB-App massive Probleme. FCs und fehlende Speicherfreigabe sind hier zu nennen.
Solange FB kein vernünftiges Qualitätsmanagement aufsetzt, kommt mir keine App aus diesem Hause mehr auf die Geräte.
@helixrider speicherfreigabe? Nicht vergessen Android apps werden in Java programmiert.
Wird Zeit das der Datenhunger der FB App weniger wird.
Ich nutze die FB App öfters am Tag und habe nach knapp einer Woche von meinem Daten Volumen (300MB) schon 150MB verbraucht durch FB. Automatisches Starten von Videos ist ausgestellt.
Weiterhin stört es das man nicht die neuesten Beiträge als Standard einstellen kann.
Sie fangen langsam an wie damals das VZ Netzwerk alles zu verbasteln….