Wie funktionieren Universal Apps?

Seite 2: Fazit

Inhaltsverzeichnis

Wer bereits eine App für eine der Plattformen in petto hat, fügt einfach ein neues Projekt für die jeweils andere Plattform hinzu. Dazu muss man in der Projektmappe mit der rechten Maustaste auf das entsprechende Projekt klicken und im Kontextmenü den Punkt Add Windows 8.1 oder Add Windows Phone 8.1 auswählen. Daraufhin erscheinen in der Projektmappe ein Windows- oder WP- sowie ein Shared-Projekt. Zu teilende Dateien müssen Entwickler von Hand in das Shared-Projekt verschieben.

Der Umbau einer Windows- oder WP-Anwendung zu einer Universal App funktioniert auch im Praxistest: Die Entwickler der H&D International Group haben beispielsweise den eigenen Mobile Incident Manager (MIM) auf WP 8.1 portiert. MIM unterstützt "Supporter" im Vor-Ort-Einsatz bei der Ticket-Bearbeitung auf mobilen Endgeräten. Bei der Portierung der reinen Windows-8.1-Anwendung zu einer Universal App konnten die Entwickler 90 Prozent der Codes übernehmen, sodass nur kleine Justierungen notwendig waren. Windows Store Apps sind für den universellen Windows-Einsatz also nicht mehr komplett neu zu entwickeln, eine einfache Anpassung reicht in den meisten Fällen aus. Das macht es für Unternehmen möglich, nicht nur attraktive Apps einzusetzen, sondern begünstigt auch die langfristige Nutzung dieser mobilen Applikationen. Denn Entwickler müssen weniger Zeit in die Logik stecken und können mehr Zeit investieren, die UI wirklich für die Gerätegröße zu optimieren.

Wer eine existierende App für eine der Plattformen hat, fügt ganz einfach ein neues Projekt für die jeweils andere Plattform hinzu (Abb. 4).

Universal Apps sind aus Kundensicht eine feine Sache: Man muss eine App nur noch einmal bezahlen und kann sie auf verschiedenen Plattformen benutzen – wobei sich hier derzeit nur von Windows Phone und Windows sprechen lässt. Mit Windows Phone 8.1 hat Microsoft seine Ankündigung des Zusammenwachsens der Plattformen eingelöst. Aus Entwicklersicht ist mit den neuen Funktionen eine Steigerung der Produktivität verbunden. Für den Unternehmenseinsatz lassen sich ebenfalls Vorteile ausmachen: Die parallele Entwicklung von Desktop-, Tablet- und Smartphone-Apps für die Windows-Plattform spart nicht nur Entwicklungskosten, sondern verkürzt auch die Entwicklungszeiten drastisch. Die Portierbarkeit von Windows-Anwendungen ist gewährleistet, sodass wichtige Geschäftsprozesse in der Regel einheitlich und mit vertretbarem Aufwand abzubilden sind.

Nicht so schön umgesetzt ist allerdings ein wesentliches Detail: Wer seine App pro Plattform bezahlt bekommen möchte, ist gezwungen, ihr unterschiedliche Namen zu geben. Ein Entscheidungsmechanismus wäre hier schön gewesen. Außerdem hat es Microsoft mit dem Begriff "Universal App" anfangs nicht so richtig geschafft zu verdeutlichen, dass es sich bei ihr um ein Windows-Store- und kein Visual-Studio-Feature handelt. Viele Entwickler gehen fälschlicherweise davon aus, dass sie eine Universal App bauen, weil sie das entsprechende Template verwenden.

Die neuen Shared-Projekte vereinfachen das Entwickeln für verschiedene Plattformen erheblich. Ihre Stärke kommt aber erst richtig zur Geltung, wenn man Cross-Platform-Apps auch für iOS und Android mit Xamarin entwickelt: Einfach gesprochen übersetzt Xamarin C#-Code in native Apps. Auf diese Weise verwenden Entwickler Code über Plattformgrenzen hinweg. Die Unterstützung von Drittanbieter-Tools für Shared-Projekte lässt momentan noch ein bisschen zu wünschen übrig. Die Optimierung ist hier allerdings sicherlich nur eine Frage der Zeit.

Microsoft sollte seine "One Windows"-Philosophie weiter vertiefen: Derzeit wird für Windows und Windows Phone jeweils eine separate App beziehungsweise ein App-Package erstellt. Mit dem Release von Windows 10 wäre es schön, wenn es nur noch ein gemeinsames App-Package gäbe und die entsprechende Plattformlogik (Views, Styles ...) als App-Bundle nachgeladen würden. Die bisherigen Ankündigungen lassen das auch vermuten. Wahrscheinlich werden Entwickler zukünftig nur noch Universal Apps für Windows entwickeln.

Karim El Jed
ist Senior-Entwickler der H&D AppFactory.
(ane)