iPad mini zeigt die Größe von Android

Ich hatte mir einmal vorgenommen, nicht über Apple Produkte zu schreiben. Das werde ich auch weiterhin so handhaben, solange ich mit iOS Geräten nicht mehr Spaß habe als mit Android Geräten. Und von diesem Horrorszenario entferne ich mich immer mehr. Heute soll es eher um die Schwächen von iOS gehen. Und die absolut größte Schwäche ist der Umgang mit verschiedenen Displaygrößen.

 

Mobile App Entwicklungszyklus

Man hat es als iOS Entwickler schon einfach. Man entwickelt seine App und kann sie immer auf den neuesten Geräten testen. Meistens hat man sogar alle Geräte auf seinem Schreibtisch auf denen die App laufen soll und sieht so sehr schnell Fehler. Wenn ein neues Gerät rauskommt, dann klemmt man sich als Entwickler dahinter und passt seine App an das neue Gerät an. Als iOS Entwickler hat man so immer was zu tun. Schließlich kommen ständig neue Geräte raus auf denen die App des Kunden auf jeden Fall laufen soll. Der Kunde muss zahlen sonst fehlen die Downloads. –> Der Entwickler hat immer was zu tun.

Ganz anders bei Android. Entwickeln für ein Gerät? Das geht nicht. Trotzdem wird es häufig gemacht. Apps werden selten sowohl für ein Smartphone als auch für ein Tablet (7’’ und 10’’) entwickelt. Doch eigentlich sollte man das machen. Jedoch muss man nicht nur für die Displaygrößen sondern auch für die verschiedenen Auflösungen entwickeln. Das hört sich erst mal nach sehr viel an, jedoch muss man es nur einmal richtig machen und der Kunde sollte so lange glücklich sein, bis er ein neues Feature möchte. Aus Kundensicht ist das eigentlich der bessere Weg. Es entstehen keine laufenden Kosten. Lediglich der Entwicklungsaufwand ist etwas höher.

Das sind zwei unterschiedliche Strategien, die beide ihre Vorteile haben. Ich kann man aber schon genau ein Gespräch mit einem Kunden vorstellen, der eine Android App haben möchte. “Jaja die App muss nur auf dem Smartphone gut aussehen.” – “Sind sie sich sicher? Tablets kommen immer mehr” – “Ich glaube nicht, dass das so schnell geht. Außerdem kostet das ja auch mehr”…

Zwei Wochen nachdem die App im Play Store ist klingelt das Telefon. “Die Kunden beschweren sich, weil unsere App auf dem iPad deutlich besser aussieht als auf Android Tablets.” – “Sie wollten die App nicht für Tablets optimieren. You get what you pay for.” – “Wir werden die App aus dem Play Store nehmen und nur noch für Apple Geräte entwickeln. Dort funktioniert das alles besser!”

Zugegeben leicht überspitzt, aber das passiert leider wirklich. Android Apps für alle Displaygrößen zu entwickeln ist nicht schwer. Es muss nur gemacht werden. Es funktioniert zwar ansonsten trotzdem, aber der Nutzer ein keine gute User Experience. Und gerade das ist es, was so viele Leute zu den Apple Produkten bringt. Doch wie funktioniert das bei Apple?

 

Apples Abwärtskompatibilität

Wenn eine App nicht explizit für ein neues Gerät ausgelegt ist, lässt sie sich erst gar nicht installieren oder funktioniert wie auf einem anderen Gerät. Hier als Beispiel einmal die alte Google+ App auf dem iPad und Chrome auf dem iPhone 5 vor der Optimierung (ganz rechts).

GooglePlus2iPhone 5 Non-Optimized Apps

Bei der alten Google+ App mag man sich vielleicht fragen warum die App nicht einfach hoch skaliert wird. Doch das wäre wirklich nicht schön da die Bilder dann verschwommen wären. Wie man es dreht und wendet, die App war auf dem iPad einfach nicht verwendbar. Nunja mag man meinen. Ist ja auch ein größer Sprung von 3,5’’ auf fast 10’’. Viel verrückter finde ich aber das zweite Beipsiel mit Apps auf dem neuen iPhone 5.

Dort kann eigentlich keiner sagen, dass die Bilder verschwommen werden weil das Display ein wenig länger ist. Zumal bei einem Browser ja wirklich nur die Kopfzeile oben am Screen klebt und der komplette Rest mit dem eigentlichen Browserfester aufgefüllt wird. Nicht so bei unoptimierten Apps auf dem iPhone 5. Dort wird oben und unten einfach ein schwarzer Balken eingeblendet. Der Entwickler darf sich also noch mal eine Stunde dran setzten. Einen haken setzten, dass die App jetzt auch auf dem iPhone 5 geht und die Größe des Browserbereichs einpassen. Und das alles nur, weil die Positionen von Elementen absolut positioniert sind. Stellt euch einfach mal vor, das Chromefenster auf euerm Desktop könntet ihr nicht größer machen, weil es nur für einen 15’’ Monitor gemacht wurde. Total Hirnrissig!

Bei Android ist eine andere Displaygröße kein Problem. Einzelne Elemente werden immer relativ zueinander definiert. Ein Element klebt am oberen Bildschirmrand, eins am unteren, und zwischendrin kann sich ein anderes Element ausdehnen wie eben Platz ist. Einziger Nachteil: Es kostet etwas Zeit solch eine Layout zu laden. Elemente können sich erst zeichnen wenn sie wissen wie viel Platz sie selbst haben. Das war vielleicht mal ein Problem, aber in Zeiten von Quadcore CPUs kann man da mal ein Auge zudrücken wenn eine App zum Starten 0.1s länger braucht als auf iOS. Schließlich muss man sich nicht bei jedem neuen Gerät hinsetzten und neu optimieren.

tc77247_genius1Genau um diesem Problem entgegen zu gehen, hat sich Apple jetzt für das iPad mini etwas sehr geniales einfallen lassen. Man nimmt einfach die viel zu kleine Displaygröße des iPad2, baut diese in das iPad mini. Die ganzen Apps müssen nicht angepasst werden, da sie schon an die damalige Displaygröße angepasst wurde. Genial oder? Auf den ersten Blick ja. Ich bin mir auch sicher, dass die ganzen Apps funktionieren werden, aber das System hat schwächen, weswegen sich wieder hunderte Entwickler hinsetzten müssen um erneut zu optimieren anstatt es einmal richtig machen zu können.

 

Pixel sind nicht gleich groß

Dazu muss ich allerdings ein bisschen weiter ausholen. Der schwierigste Schritt bei der Android Entwicklung ist sicherlich der Umgang mit DP. Das ist ein…, sagen wir mal Standardpixel. Die Größe eines Pixels bei 160dpi. Hat ein Display beispielsweise 320dpi, dann wird ein solcher Pixel mit 4 Pixeln angezeigt. Das Bild wird schärfer. Würde man mit Pixeln arbeiten dann würde ein 80px Button bei der bei 160dpi ganz normal aussieht bei einer heutigen Auflösung von 320dpi nur noch halb so groß sein. Doch warum macht man den Aufwand überhaupt. Soll der Button doch nur halb so groß sein.

Hier muss man ganz stark zwischen der Eingabemethoden unterscheiden. Bei PCs bei denen man mit der Maus navigiert ist es kein Problem einen kleinen Button zu treffen. Im Web und auch sonst arbeitet man deshalb auch nur mit Pixeln. Das langt völlig. Bei Touch Geräten allerdings muss man darauf achten, dass ein Button ungefähr so groß ist wie ein Finger dick ist. An die Kategorie Wurstfinger muss man auch immer denken. Deshalb gibt man die Größen bei Android immer in DP an damit auf allen Geräten ein Button immer gleich groß und groß genug ist.

pixel density example 1

Wenn Apple jetzt einfach die dpi erhöht, in dem man das Display des iPad mini gegenüber dem iPad2 kleiner macht, werden auch alle Buttons kleiner. Selbstverständlich hat Apple das auch bedacht. Auf dem iPad werden Buttons größer angezeigt als auf dem iPhone. Wenn der iPad screen nun also runterskaliert wird, dann haben die Buttons beim iPad mini genau die gleiche Größe wie beim iPhone. Das ist allerdings nur bei Standard UI Elementen so. Wenn jemand einen eigenen Button geschrieben und sich an die iOS Guidlines gehalten und seine Buttongröße an die minimale Größe von 44×44 Points gehalten hat, dürfte beim iPad mini unterhalb dieser Größe liegen. (Aufgepasst. Auch iOS hat so etwas wie DP in Android. Jedoch wird beim iPad mini ein Point genau so groß wie ein Point beim iPad2 sein. Die Unterscheidung gilt meines Wissens nach nur beim Retina Display bei dem 1 normaler Point 2 Points entspricht. Wenn ein Point nicht 1 Pixel entspricht, wäre es grob fahrlässig wenn man die Apps ungetestet den Nutzern zur Verfügung stellt. Bei vielen Apps dürfte ein mix zwischen dp bei Standard Elementen und px bei eigenen Elementen existieren. –> Die Apps sehen furchtbar aus).

Es hat jedoch nicht nur mit den Button Größen zu tun. Auch Texte werden für gewöhnlich auf allen Geräten gleich groß angezeigt. Werden die Texte auch mitskaliert? Um Komplikationen mit zu langen Texten in UI Elementen zu vermeiden bestimmt. Das hat jedoch zur Folge, dass man texte schlechter lesen kann. Ob Omi und Opi sich über kleinere Schrift freuen?

Wie man es dreht und wendet, Apple ist auf dem Boden der Tatsachen zurückgekehrt und hat nun mit dem gleichen Problem zu kämpfen wie Android. Fragmentierung! Und das wird sicherlich in Zukunft nicht weniger werden. Zumindest die iOS Entwickler werden immer etwas zu tun haben.

Ich habe hier noch ein Beispiel das den Unterschied der Displaygrößen sehr schön zeigt. Das Nexus 7 und das Transformer Prime. Beide mit der gleichen Auflösung (1280×800). Auch wenn der Unterschied bei Apple nicht ganz so krass ist: Wo wird Inhalt angezeigt? Einfach runterskalieren geht einfach nicht.

IMG_20121023_233655

 

iPad Mini ist trotzdem toll

Abschließend bleibt nur noch zu sagen, dass ich glaube, dass sich das iPad Mini verkaufen wird wie geschnitten Brot. Ich bin mir sicher, dass es die Verkaufsrekorde des iPad3 brechen wird. Ich bin mir aber genau so sicher, dass die Nutzer bemerken werden, dass die Auflösung sehr dürftig ist, wenn man es mit dem Nexus 7 vergleicht das auf kleinem Screen mehr Pixel unterbringt. Ich hoffe, dass bei der Präsentation nicht nur mir aufgefallen ist, dass man auf dem iPad mini nicht mehr sieht als auf dem Nexus 7 wie von Apple angedeutet.

 

Pascal Welsch

Apple don’t know fullscreen on Android Devices.

Was man Apple echt zugute halten muss ist die Qualität. Das iPad mini wird sicher super in der Hand und von der Verarbeitung weit vor den Android Geräten liegen. Das spiegelt sich selbstverständlich auch im Preis wieder, der ganz klar die Zielgruppe absteckt. Ein Schüler wird sich sicher ein Nexus 7 holen und mit den 130$ die er gespart hat eine menge Spaß haben.

Was Apple aber am weitesten voraus hat? Es bringt seine Geräte mit 3G/LTE zeitgleich mit der WLAN Version auf den Markt. Ich würde mir kein Tablet mehr ohne 3g kaufen. Davon dürfen sich alle anderen Hersteller eine Scheibe abschneiden.

Ich würde gerne mit iPhone und iPad rumlaufen, wenn Android drauf laufen würde. Doch mit closed Source iOS werden wir keine Freunde Apple.

, , , , , , , , , , , , , , , , , , ,

Hinterlasse eine Antwort

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>