Beinahe allwöchentlich wird von den zahlreichen Kritikern des Android OS die Fragmentierungskeule ausgepackt und dem mobilen Betriebssystem exakt das vorgeworfen, was es ausmacht: Seine enorme Verbreitung auf ganz vielen unterschiedlichen Geräten. Abgesehen davon, dass dieser ständige Vorwurf quantitativ wie qualitativ stark überzogen ist, basiert er auch auf einem völlig falschen Verständnis des mobilen Betriebssystems — das bietet mit seinen APIs und der damit verbundenen Möglichkeit des responsiven Designs von Apps nämlich effektive Maßnahmen, um ganz einfach für unterschiedlichste Hardware zu optimieren.
In der vergangenen Woche hat ein Anbieter namens OpenSignal, der sich eigentlich der Darstellung von Netzabdeckung verschrieben hat, mal wieder eine Studie zur viel diskutierten Fragmentierung des Android OS veröffentlicht: Eine kunterbunte Grafik, die in vielfarbigen Kacheln die stark zerstückelte Verbreitung verschiedener Geräte mit unterschiedlichster Hardware darstellt. Während OpenSignal selbst in diesem neuen Hoch der Fragmentierung zwar durchaus auch Vorteile sieht, führte jenes Mosaik für manche zu ganz furchtbar erschreckenden Schlussfolgerung — beispielsweise titelte BusinessInsider.com prompt, diese Grafik sollte "Android-Nutzer gruseln".
Warum um alles in der Welt sollte die Diversität, die Android groß gemacht hat, seine Nutzer aber gruseln? Oder auch nur irritieren? Vor ein paar Wochen hatte ich hier auf CURVED bereits einen Artikel dazu veröffentlicht und darin aufgezeigt, dass das "Problem" der Fragmentierung nicht nur völlig übertrieben dargestellt wird, sondern auch für den Nutzer bei weitem nicht die drastischen Auswirkungen hat, die die Fans anderer Hardware-Monokulturen darin zuweilen sehen wollen.
Der Vorwurf, es sei schwieriger für Android zu entwickeln, verkennt völlig, wie moderne Betriebssysteme und allen voran Android aufgebaut sind.
Nun postuliert der BusinessInsider aber, dass "that fragmentation is tough on developers, the folks who make apps you love. When you're making software for so many devices, it's difficult to make sure your app works well for each unique piece of hardware. It's part of the reason why Android still tends to get new apps and updates later than the iPhone does." Zu deutsch: Fragmentierung mache den armen Entwicklern, die uns unsere geliebten Apps liefern, das Leben schwer. Sie müssten ihre Software für so viele Geräte optimieren, weswegen Android stets später mit tollen Applikationen bedacht würde als iOS.
Immer wieder wird das Argument vorgebracht, aufgrund der zahllosen Hardware-Varianten sei es ungleich schwieriger Apps für Android zu entwickeln als für das pflegeleichte iOS und seine ein zwei Händen abzählbaren Plattformen — und das wäre der Grund dafür, dass bestimmte Anwendungen erst sehr viel später oder gar nicht in den Play Store kommen. Diese Behauptung verkennt aber völlig, wie moderne Betriebssysteme und allen voran Android aufgebaut sind.
Ich bin jahrelang leidenschaftlicher PC-Spieler gewesen (heute fehlt mir dazu leider mehr und mehr die Zeit), und deswegen hat Microsofts Grafikschnittstelle Direct X meine Jugend mitgeprägt: PCs waren schon immer fragmentiert, Spiele-Entwickler hatten stets das Problem, ihre Produkte auf möglichst vielen Hardware-Konstellationen möglichst flüssig und effektiv laufen zu lassen.
Direct X war Microsofts Antwort darauf und erlaubte, für eine Schnittstelle zu programmieren, während die dann die Koordination zwischen Software und Hardware beziehungsweise deren Treibern übernahm. Unter Windows funktioniert das bis heute hervorragend. Das Gleiche gilt im Übrigen für modernes Webdesign, das ebenfalls für zahllose Bildschirmgrößen und Auflösungen angepasst wird — Responsive Design ist hier das bekannte Schlagwort.
Androids APIs sind das Direct X des mobilen OS
Es gibt zwar kein Direct X für Android, dafür aber zig andere APIs, die Google den geneigten App-Entwicklern zur effektiven Programmierung bereitstellt — und die sich ihrerseits um die Skalierung der Apps für alle erdenklichen Hardware-Plattformen, auf denen Android installiert ist, kümmern. Es ist also beileibe nicht so, dass ein App-Entwickler sein Produkt mühsam für 20.000 verschiedene Geräte optimieren muss.
Eine gut und nach Googles Richtlinien und Vorgaben kreierte App wird auf 99 Prozent aller Geräte, auf denen Android läuft, auch gut funktionieren — unabhängig von deren Displaygröße und -Auflösung. Und dafür muss der Entwickler sie nicht etwa auf jedem Smartphone ausprobieren und anpassen.
Auch für die unterschiedliche Leistungsfähigkeit der Android-Geräte gilt, dass eine App, die auf schwacher Hardware funktionieren soll, noch nicht einmal für bestimmte Chipsätze optimiert werden muss: Dank Just-in-time-Compiler in Androids Dalvik- beziehungsweise ART-Laufzeitumgebung wird sie im Ergebnis so schnell laufen, wie es eben geht. Einzig bei hardwarehungrigen Spielen, ist es ratsam, auf die Hardware zu optimieren und eventuell Skalierungsmechanismen einzubauen — eine allerdings systemimmanente Anforderung von High End-Apps auf allen Plattformen.
Android seine Diversität vorzuwerfen, verkennt den essenziellen Charakter des offenen Betriebssystems.
Im Regelfall muss ein Entwickler seine Android-App damit lediglich auf einigen wenigen Geräte unterschiedlicher Leistungsfähigkeit ausprobieren, um sicherzustellen, dass die dann auch auf der breiten Masse der mit dem Google OS bestückten Hardware funktioniert. Der Irrglaube, iOS mache es Programmierern durch sein begrenztes Hardware-Angebot irgendwie leichter, basiert auf einem vollkommen falschen Verständnis mobiler Betriebssysteme: Weder Apple noch Google verlangen von App-Entwicklern, ihre Programme für jedes verfügbare Gerät zu optimieren; genauso wenig, wie PC-Spiele-Entwickler oder Web Designer dies tun müssen — oder könnten.
Es stimmt also einfach nicht, dass die Fragmentierung der Android-Welt ein großes Problem wäre — weder für den Nutzer noch für Entwickler. Und an den paar Punkten, die kritisch sind oder es werden könnten, beispielsweise bei der zuweilen schleppenden Update-Verteilung, hat Google selbst mittlerweile mit gut greifenden Mechanismen wie den Play Services vorbildlich nachgebessert.
Android ist nicht iOS und soll es auch nicht werden
Android seine Diversität vorzuwerfen — der Begriff 'Fragmentierung' an sich ist ja schon negativ behaftet, erinnert er doch an langsame Festplatten und irgendetwas Zerbrochenes —, ist zum einen schlicht falsch und verkennt zum anderen den essenziellen Charakter des offenen Betriebssystems. Oder anders: Android ist nicht iOS, und das ist verdammt gut so. Vielmehr sollte beim Betrachten und Bewerten des Google OS die Apple-Brille endlich abgesetzt werden.
Android und seine Hardware-Landschaft können und werden konzeptionell bedingt niemals so homogen werden wie iOS. Ja, Apple hat mit dem iPhone und iOS eine Revolution gestartet; aber deswegen ist dieser Weg mit seiner begrenzten Hardware und der "Walled Garden"-Konzeption ja nicht zwingend der einzig legitime oder effektive. Die Vergangenheit und vor allem die Gegenwart zeigen, dass Android seinen eigenen Weg geht — und das sehr effektiv.
Wer damit aus religiösen Gründen ein Problem hat, der soll sich halt in Gottes/Apples Namen weiterhin vor dem Gespenst der Fragmentierung fürchten. Wer gegenüber Diversität offen ist, hat keinen Grund zur Angst; da ist es im Digitalen wie im echten Leben. Ich bin derweil für einen Aufkleber à la "Ich bin fragmentiert — na und?"