Wie Apple mit iOS 8 die HTML5-Entwicklung vorantreiben will
Kommentare

Die Ankündigung des bevorstehenden Release von Apples neuem mobilen Betriebssystem iOS 8, das für heute geplant ist, sorgte in der Community für viel Aufregung und gespannte Erwartung. Das Team von

Die Ankündigung des bevorstehenden Release von Apples neuem mobilen Betriebssystem iOS 8, das für heute geplant ist, sorgte in der Community für viel Aufregung und gespannte Erwartung. Das Team von Sencha hat sich das zum Anlass genommen, einen Blick auf die neuen Features und die vorgenommen Verbesserungen am iOS-Update zu werfen.  Im Fokus steht dabei besonders der Support von HTML5 in iOS 8 und dessen Performance und technische Spezifikationen – insbesondere im Hinblick darauf, dass iOS 8 die neue Baseline für Tests von mobilen Apple-Plattformen werden wird.

Neue Features in iOS 8

Der kommende iOS 8-Release bringt viele neue Features mit sich, die Entwickler in iOS 7 vermisst haben und die dazu beitragen sollen, die Weiterentwicklung von HTML5 voranzutreiben. Dabei fallen einige Features besonders ins Auge.

Zum einen kommt der Support von 3D-Grafiken in WebGL, der vermutlich besonders die Entwickler im Gaming-Bereich interessieren dürfte, zum anderen erlaubt das CSS Shapes Level 1 ein dynamischeres Text-Layout, wodurch Apps eher wie ein Magazin als eine Website wirken sollen.

Ebenso finden HTML-Templates und High Resolution Timing APIs ihren Weg in das neue iOS. Auch IndexedDB sowie SVG Fragment Identifiers werden in iOS 8 unterstützt. Besonders letzteres ist ein wichtiges Features, das nicht nur in der Gaming-Entwicklung seinen Nutzen haben wird, sondern auch bei der Erstellung von dynamischeren Icons und UI-Elementen.

iOS 8 kommt zudem mit zwei nativ implementierten Webviews: UIWebView und WKWebView. Während UIWebView nur aus Legacy-Gründen behalten wird, entstand WKWebView durch ein Upgrade des Core-WebKit-Codes und nutzt die Nitro-JS-Engine, die eine viermal bessere Performance als die alte UIWebView haben soll – wenngleich sie derzeit noch nicht ganz problemlos funktioniert.

iOS 8 sorgt für bessere Performance

Das Sencha-Team legte bei seinem Test von iOS 8 besonderen Wert auf die Performance der Apple-Plattform. Dabei zeigt sich, dass iOS 8 für eine deutlich bessere Performance sorgen könnte – sieht man von einigen Octane-Ergebnissen ab, die im Vergleich zu iOS 7 niedriger ausfielen.

Dazu gehört vor allem CodeLoad, womit gemessen werden kann, wie schnell die JavaScript-Engine starten kann, nachdem sie eine umfangreiche JavaScript-Datei eingezogen hat. Für Applikationen, die beispielsweise mit Sencha erstellt wurden, bedeutet das, dass das Startup verzögert werden könnte, weil größere JavaScript-Dateien verwendet werden.

Dom Query erfährt bei iOS 8 eine herausragende Verbesserung von 308 % und auch in anderen Dom-Core-Tests erzielt iOS 8 bessere Ergebnisse als iOS 7. Ein ähnliches Bild ergibt sich auch bei CSS-Selector-Tests, JavaScript-Tests und dem IE-Fishtank-Test. Bis auf wenige Ausnahmen zeigt iOS 8 jeweils eine Performance-Verbesserung im Gegensatz zu iOS 7. Nur bei Base64 und Code Eval hat iOS 7 die Nase vorne.

Auch beim HTML5-Test fällt auf, dass iOS 8 einen deutlichen Auftrieb erhält und mit einem Ergebnis von 438 Punkten im Vergleich mit anderen Plattformen vorne liegt. Verantwortlich dafür sind vor allem einige Änderungen, beispielsweise die Implementierung neuer Features, die Apple am Code vorgenommen hat.

Bekannte Bugs in iOS 8

Kaum eine neue Software ist direkt mit dem Release ohne Bugs verfügbar. Das Sencha-Team weist in seinem Blogpost vor allem auf drei Bugs hin, die die Arbeit von HTML5-Entwicklern erschweren können:

  1. WKWebView Local File Loading Bug Der Bug ist ein Sicherheitsproblem, das verhindert, dass WKWebView Dateien aus dem lokalen Datensystem lädt. Damit werden insbesondere Apps blockiert, die offline/lokale Dateien nutzen.
  2. XHR Local File Access Auch dieser Bug sorgt für Probleme mit lokalen Dateien. Er verhindert, dass XHR-Objekte lokale Dateien vom Gerät – etwa von Bildergalerien zum Server – sendet.
  3. Timing-Funktion von Homescreen-Apps funktioniert nicht nach Sperren/Aufwecken Dieser Bug sorgt für Probleme mit der Timing-Funktion von Apps. Sie funktionieren zwar, wenn die App das erste Mal geöffnet wird, nach dem Sperren/erneutem Entsperren und der Rückkehr in die App können die Timing-Funktionen jedoch keine Callbacks mehr anfordern.

Insgesamt sind sich die Sencha-Entwickler allerdings sicher, dass die Änderungen und neuen Features in iOS 8 viele wertvolle Verbesserungen für Webentwickler bereit halten – nicht nur, was die Performance von Apps angeht, sondern auch, um die Cross-Plattform-Weiterentwicklung von HTML5 voranzutreiben.

Aufmacherbild: W3C – Official HTML5-Logo / Urheber: W3C

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -