2438935

Catalyst bringt iPad-Apps auf den Mac: Praxisberichte von Entwicklern

02.07.2019 | 13:35 Uhr | Stephan Wiesend

Dank dem Projekt Catalyst können Entwickler iPad-Apps einfacher auf den Mac portieren. "Ars Technica" hat einige Erfahrungen aus der Praxis dokumentiert.

Schon seit 2017 gab es Gerüchte, Apple werde es mit einem Projekt namens „Marzipan“ möglich machen, iOS-Apps schnell und einfach auf den Mac zu portieren. Das zur WWDC von Apple offiziell als Catalyst vorgestellte Projekt ermöglicht dies nun auch wirklich, wenn auch die Portierung auf iPad-Apps begrenzt ist. Bei der Vorführung bei der Keynote wirkte die Portierung einer App wie ein Kinderspiel, wie ein ausführlicher Bericht von Samuel Axon für "Ars Technica" zeigt, gibt es aber in der Praxis doch zahlreiche Einschränkungen – und mit dem simplen Setzen eines Häkchens in Xcode ist es doch nicht getan.

Der Hintergrund: Größter Unterschied zwischen iOS- und Mac-Apps ist die Bedienoberfläche, muss diese für den Mac doch auf die Bedienung per Tastatur und Mac, beim iPad auf Touchscreen-Bedienung ausgelegt sein. Bisher wurde die Oberfläche von  Apps für iOS und Mac mit zwei verschiedenen Frameworks in Xcode entwickelt, iPad-Apps mit dem UIKit, Mac-Apps mit AppKit.

Neu ist nun, dass UIKit zusätzlich zur iPad-App (keine iPhone-App!) auch eine Mac-Version erstellen kann . Das Tool erhält automatisch etwa eine Menüleiste, unterstützt Trackpad, Maus und Tastatur und man kann Fenster mit der Maus skalieren und vieles mehr. In gewisser Weise konkurriert SwiftUI mit Catalyst, hier handelt es sich aber um eine neues Framework, das komplett auf Plattformunabhängigkeit ausgelegt ist. Interessant ist SwiftUI aber für komplett neue Apps.

Die App Home ist ein Beispiel für eine Catalyst-App
Vergrößern Die App Home ist ein Beispiel für eine Catalyst-App

Twitter

Wie der Entwickler Nolan O´Brien von Twitter berichtet, ist es in der Praxis aber mit dem Anklicken von ein paar Optionen nicht getan. Die Programmierer des Dienstes haben wie bei der Keynote angekündigt, ihre iPad-App mit Catalyst als Mac-App umgesetzt und berichten von einigen Problemen. So ist die Unterstützung mehrerer offener Fenster anders als bei herkömmlichen Apps, bei Catalyst-Apps läuft etwa jedes Fenster unabhängig. Auch das Vergrößern und Verkleinern eines Fensters ist in der iPad-App nicht berücksichtigt – muss aber in der Mac-App möglich sein. Das größte Problem hatten die Entwickler aber, da Apple die Unterstützung von OpenGL eingestellt hat. Insgesamt wäre eine eigenständige Mac-App allerdings weit aufwendiger gewesen und man könne nun allen Nutzern Twitter auf Mac, iPhone, iPod und iPad bieten.

Spieleportierung

Besonders schnell gelang dagegen der Firma Gameloft die Portierung ihres Spiels "Asphalt 9: Legends". Alex Urbano und Manuel Ruiz von Gameloft berichten, die Portierung ihres iPaD-Spiels habe etwa 24 Stunden gedauert. Eine anspruchsvollere Aufgabe wäre aber die Anpassung an größere Displays gewesen. Ihr Spiel wäre aber von Anfang an auf die Kompatibilität mit vielen Plattformen und Auflösungen ausgelegt gewesen.

Tripit

Besonders umfassend dokumentiert der Entwickler der App Tripit seine Portierung für den Mac. Bei der Portierung der Reise-App musste der Entwickler Rich Shimano nämlich zahlreiche nicht unterstützte Frameworks deaktivieren, die von Catalyst nicht unterstützt werden: Dazu gehören alte Frameworks von Apple wie MessageUI und UiWEbView, nicht unterstützte Mobil-Frameworks und zahlreiche Frameworks von Drittherstellern: Darunter etwas Crashlytics, Facebook Sign-in und Google Maps. Als größten Aufwand wertet Shimano das Ersetzen von alten, nicht unterstützten Frameworks. Diese müssten mit neuen APIs neu erstellt werden.

Kritik

Seit der Vorstellung von Catalyst ist viel Kritik zu hören , die neue Portierung-Option könnte zu einer Flut simpler schnell portierter Mobil-Apps auf dem Mac führen. Die mit macOS 10.14 Mojave vorgestellten Apps Sprachnachrichten, News, Home und Aktien waren ja die ersten Catalyst-Apps und als Desktop-Apps zwar funktional, aber nicht gerade beeindruckend. Von "Ars Technica" darauf angesprochene Apple-Mitarbeiter sahen da aber nur eine geringe Gefahr. Die einfache Portierung der iPad-App würde die Entwicklung von anspruchsvolleren Desktop-Apps ja eher bestärken, da sie dem Entwickler mehr Zeit für spezielle Anpassungen gäbe. Außerdem sorgten die Kommentare im App Store ja für viel Feedback von den Nutzern.

iPad OS

Eine große Rolle spielt in der zukünftigen App-Entwicklung aber wohl auch die Einführung von iPadOS. So unterstützt das neue iPad-System erstmals Funktionen wie Multithreading und mehrere Fenster, was bisher nur unter macOS unterstützt wurde. MacOS und iPadOS gleichen sich also mehr aneinander an, dagegen steht Catalyst ja nicht für iPhone-Apps zur Verfügung.

Abschließend gibt es laut "Ars Technica" aber zukünftig gleich drei Methoden, Apps zu entwickeln:

- Man entwickelt mit UIKit iOS oder iPadOS-App und kann diese per Catalyst als Mac-Apps exportieren: Hier liegt der Fokus auf Apps, die vor allem für Mobilanwender gedacht sind – beispielsweise Twitter.

- Sind das Ziel vollwertige Apps für den Mac, kann man diese wie bisher mit AppKit erstellen und kann spezielle Frameworks und APIs für den Desktop nutzen

- Sollen die Apps dagegen plattformunabhängig auf allen Apple-Plattformen laufen, ist bei neuen Projekten das neue SwiftUI ideal.

Macwelt Marktplatz

0 Kommentare zu diesem Artikel
2438935