macOS Mojave aandelen-app

Catalyst: alles over universele apps voor iOS en macOS

Apple maakt het overzetten van iOS-apps naar de Mac gemakkelijker. Hiervoor heeft Apple Catalyst aangekondigd. Dankzij Catalyst wordt het voor ontwikkelaars veel gemakkelijker om apps voor iOS en macOS te ontwikkelen. Ontwikkelaars kunnen er nu al mee aan de slag.

Catalyst: wat is het?

Apple gaat iOS en macOS niet samenvoegen, maar het wordt wel gemakkelijker om apps uitwisselbaar te maken tussen beide platformen. Hiervoor is Project Catalyst opgericht, dat vanaf macOS 10.15 Catalina beschikbaar is voor ontwikkelaars. Hiermee kunnen ontwikkelaars apps maken die op alle drie platformen werken. Apple heeft drie apps gedemonstreerd die met Catalyst geschikt zullen worden gemaakt voor de Mac: Twitter, Asphalt 9 en Jira Cloud. Daarnaast komt DC Universe als app naar de Mac. Twitter zou dankzij Catalyst in staat zijn geweest om in een dag een geschikte app te ontwikkelen.

Van Marzipan naar Catalyst

Het project heette aanvankelijk ‘Marzipan’ en die naam is lange tijd blijven hangen, ook al noemt Apple het intern niet meer zo. Met Marzipan heeft Apple in 2018 al een viertal apps zelf naar de Mac gebracht, waaronder de Aandelen en de Woning-app.

Aandelen-app in macOS Mojave

Waarom universele apps?

Apple zit met een probleem: er zijn miljoenen apps voor de iPhone en iPad gemaakt, maar de Mac App Store loopt een beetje achter. Ontwikkelaars vinden het minder interessant om Mac-apps te maken en ook bij Apple zelf is te merken dat de focus vooral op iOS ligt.

Daarnaast is er een ander probleem: steeds meer functies moeten zowel op iOS als macOS beschikbaar komen en daarbij komt de Mac vaak op de tweede plaats. Zo was de Woning-app lange tijd wel op iOS te gebruiken, maar nog niet op de Mac. Op zich is dat vreemd, want zo heel ingewikkeld steekt de app niet in elkaar. Het zou voor Apple vrij simpel moeten zijn om de Woning-app geschikt te maken voor macOS.

Met Catalyst heeft Apple daar nu iets op gevonden. Concreet houdt Catalyst in dat ontwikkelaars een Mac-versie van een iPad-app kunnen maken door gebruik te maken van UIKit. Dit is een Apple-framework dat tot nu toe alleen gebruikt kon worden voor iOS-apps. Wil je je bestaande iPad-app ook op de Mac beschikbaar stellen, dan open je een Xcode-project en zet je een vinkje bij de Mac in het onderdeel General > Deployment Info.

macOS Mojave aandelen-app

Catalyst fase 1: universele apps van Apple zelf

Tijdens WWDC 2018 benadrukte Apple dat iOS en macOS niet zullen worden samengevoegd, maar dat er zou worden gewerkt aan een oplossing voor universele apps. In fase 1 bracht Apple de volgende iOS-apps over naar macOS, om een indruk te geven wat er met Catalyst mogelijk is:

  • Apple News
  • Woning
  • Dictafoon
  • Aandelen

Als je goed kijkt zijn deze Mac-apps eigenlijk identiek aan de iPad-versies. We krijgen nu alvast een ‘sneak peak’ van hoe het eruit gaat zien.

Catalyst fase 2: universele apps van externe ontwikkelaars

In fase 2 kunnen ontwikkelaars zelf aan de slag gaan met het omzetten van hun iOS-apps naar de Mac. Daarbij zal in veel gevallen ook de iPad-versie het uitgangspunt zijn. Tijdens WWDC 2019 gaf Apple meer details over Catalyst en vervolgens heeft Apple ook de benodigde ontwikkelaarstools beschikbaar gesteld. Het wordt hiermee eenvoudiger om apps te maken waarvan de interface onafhankelijk is van een specifiek besturingssysteem. Ontwikkelaars hoeven dan geen rekening te houden met de verschillen tussen iOS en macOS.
Fase 2 zullen we gaan zien in macOS 10.15 en iOS 13 of 13.1. In hetzelfde jaar kunnen we een nieuw design voor het beginscherm en de interface van iOS en macOS verwachten.

Wat is het voordeel van cross-platform apps?

Het voordeel voor gebruikers is dat apps sneller beschikbaar komen op macOS. Je hoeft dus niet meer tien jaar te wachten tot de Aandelen- en Dictafoon-app eindelijk naar de Mac komen. Ook lopen apps zoals iMessage, Safari, Notes en Kaarten en functies zoals Siri niet meer zover uiteen als je de iOS-versie met de Mac-versie vergelijkt.

Voor ontwikkelaars heeft het ook voordelen, dat ze makkelijker hun apps kunnen uitbreiden van iOS naar macOS.

macOS Mojave dictafoon-app

UIKit vs AppKit

Daarnaast heeft het voor Apple allerlei voordelen. De huidige iOS-apps maken gebruik van het nieuwere UIKit framework, terwijl de Mac-apps gebruik maken van de oudere AppKit frameworks. AppKit biedt alle elementen van de gebruikersinterface, zoals vensters, knoppen, menu, scrollbalken en tekstvelden. Ook regelt het aan de softwarekant alles wat nodig is om apps op het scherm te tonen. AppKit dateert echter uit de jaren tachtig van de vorige eeuw en is ontstaan uit de NeXTSTEP Application Kit van NeXT, het bedrijf dat Steve Jobs oprichtte in de periode dat hij bij Apple was opgestapt.

Bij de ontwikkeling van iOS koos Apple voor een compleet nieuw software-framework voor apps, namelijk UIKit. Dit was afgestemd op kleinere schermen en touch-bediening. Hoewel apps voor iOS en macOS met Objective-C en Swift worden gemaakt, gebruiken ze toch fundamenteel andere frameworks voor de interface.

Apple probeerde ooit de Foto’s-app (de vervanger van iPhoto) met UXKit te bouwen, zodat het gelijktijdig op iOS en macOS verscheen, maar dit liep vertraging op en de gebruikerservaring was niet optimaal. Ook bij andere oplossingen om cross-platform apps te maken valt de gebruikerservaring vaak tegen. Zo zijn er externe frameworks (niet van Apple) die beloven dat je in één moeite iOS- en Android-apps kunt maken. Meestal zien ze er echter uit als een typische iOS-app, waardoor Android-gebruikers ontevreden zijn. Of omgekeerd: dat apps een Android-achtige interface krijgen, waardoor iOS-gebruikers zich niet goed thuis voelen.

macOS Mojave met Apple News

Wanneer komen universele apps?

Je kunt nu al aan de slag met de universele apps van Apple zelf, te weten Woning, Dictafoon, Aandelen en Apple News. Die laatste is alleen beschikbaar in Engelstalige landen zoals de VS en Australië. In 2019 krijgen we meer universele apps te zien. Apple zal de benodigde tools beschikbaar stellen na WWDC 2019, waarna we de eerste praktische toepassingen in het najaar van 2019 tegemoet kunnen zien.

Betekent dit het einde van Mac-apps?

Niet helemaal, we zullen nog steeds traditionele ‘native’ Mac-apps zien, die speciaal voor macOS gemaakt zijn. Maar er komen ook veel meer apps bij die eruit zien als iPad-apps. Nu zijn ontwikkelaars vaak gedwongen om te kiezen tussen het ontwikkelen van een iOS-app of een Mac-app. Ze hebben ook maar beperkte tijd en middelen, dus allebei lukt vaak niet omdat er bij een app nog veel meer komt kijken, zoals support. Vaak valt de keuze dan op een iOS-app, omdat er domweg veel iPhone- en iPad-gebruikers zijn. Daardoor loop je als Mac-gebruiker vaak leuke nieuwe apps mis. Door het makkelijker te maken om apps over te zetten hoopt Apple dat er meer keuze komt voor Mac-gebruikers. Het zal daarbij vaak gaan om lichtgewicht apps. Zo zou een app voor Instagram erg nuttig kunnen zijn.

Je zult in de Mac App Store vanaf 2019 een mix gaan zien van native Mac-apps en apps die eruit zien als iPad-apps. Deze apps zijn uiteraard aangepast voor een andere bediening. Op de Mac gebruik je een toetsenbord en muis, terwijl je op de iPhone en iPad met je vingers werkt. Dat het heel goed mogelijk is om apps van iOS naar een ander platform over te brengen is al te merken bij tvOS: er zijn heel wat Apple TV-apps die vanuit een iOS-versie zijn overgezet naar een versie die op het grotere tv-scherm getoond kan worden. Voor elk platform gelden wel andere eisen, bijvoorbeeld wat de bediening en het design betreft. Op een Apple TV moeten de knoppen extra groot zijn, zodat je op afstand kunt lezen wat er staat. En je moet ze met een afstandsbediening kunnen aansturen.

macOS Mojave Woning-app voor HomeKit

Opgeblazen iPad-apps
Toch zien de eerste Catalyst/Marzipan-apps die Apple heeft uitgebracht er vooral uit als opgeblazen iPad-apps. Ze zijn te bedienen met toetsenbord en muis, maar de gebruikersinterface is niet speciaal aangepast voor de Mac. Dat blijkt vooral in de Woning-app, die er op de Mac hetzelfde uitziet als op de iPad, met grote knoppen waarop je kunt tikken. Op de Mac zul je er echter met de muispijl naartoe moeten bewegen. Dat kan gaan veranderen als Apple in 2019 zelf vooruitgang heeft geboekt. Apple is in UIKit al bezig om klassieke interface-elementen van de Mac toe te voegen, zoals een zijmenu.

Ontwikkelaars kunnen straks in Xcode aangeven dat ze een versie van hun app willen maken die op macOS draait, waardoor meteen de layout en de werking van de app wordt aangepast. Een long press in iOS zal dan automatisch worden vervangen door een dubbelklik met de muis in macOS. Sommige ontwikkelaars zullen wat meer moeite doen om van hun app een native uitziende Mac-app te maken, terwijl andere ontwikkelaars tevreden zullen zijn met een 1-op-1 kopie.

Een interessante bijkomstigheid is dat iPhones en iPads draaien op ARM-processors, terwijl Macs nu nog draaien op Intel-processors. Als apps in de nabije toekomst voor beide processortypen geschikt zijn wordt het gemakkelijker voor Apple om op een ARM-gebaseerde Mac over te stappen. Er zijn geruchten dat Apple bezig is om in eigen huis een Mac-processor te ontwikkelen, zodat Intel aan de kant gezet kan worden.

Suggestie hoe we dit artikel kunnen verbeteren? Laat het ons weten!

Informatie

Laatst bijgewerkt juni 2019