Inleiding
Traditiegetrouw brengt Apple kort voor de release van een nieuwe iPhone een nieuwe versie van zijn iOS-besturingssysteem uit. Waar vorig jaar bij iOS 7 het nieuwe uiterlijk de show stal, draait het bij iOS 8 om nieuwe features voor de gebruiker, maar zeker ook om nieuwe mogelijkheden voor ontwikkelaars. Zo wordt het in iOS 8 mogelijk om toetsenborden van externe ontwikkelaars te gebruiken, kunnen fabrikanten van fitness-apps gegevens stallen in Apples Health-app via de Healthkit-api en kan de gpu via de nieuwe Metal-api directer aangesproken worden, wat tot betere gameprestaties moet leiden.
Voor de gebruiker zijn er verbeteringen aangebracht in onder andere Spotlight, de Messaging-app en Siri. Daarnaast is de integratie tussen iOS en Mac OS X Yosemite, dat later dit jaar moet verschijnen, versterkt. Het gaat dan om gebruikers van een iPhone 4S of hoger en van een iPad 2 of hoger, want alleen deze apparaten kunnen iOS 8 draaien. Wij installeerden de zogenaamde Gold Master van iOS8 op een iPhone 5s om te kijken hoe al deze wijzigingen in de praktijk uitpakken.
Keuze uit verschillende toetsenborden
Een van de wijzigingen die in de praktijk een grote impact kunnen hebben is de ondersteuning voor alternatieve toetsenborden, zoals we al langere tijd kennen van Android. De fabrikanten achter Swiftkey, Fleksy en Swype hebben al toegezegd dat ze met een iOS-versie van hun toetsenborden komen. Goed nieuws, want al die toetsenborden bieden unieke functionaliteit, die je niet bij het standaard-iOS-toetsenbord kunt vinden. Het toont ook een verandering in de denkwijze van Apple; het bedrijf geeft hiermee aan dat het begrijpt dat niet alle gebruikers zich in zijn ontwerpkeuzes kunnen vinden.
Van Swiftkey ontvingen we een testversie om alvast te kijken hoe het gebruik van een alternatief toetsenbord in zijn werk gaat. Allereerst moet je het toetsenbord installeren, net als elke andere applicatie. Daarna kun je in het iOS-instellingenmenu van toetsenbord wisselen. Ook terwijl je het toetsenbord gebruikt, kun je tussen toetsenborden schakelen door op het wereldbolicoontje te drukken.
De basisfunctionaliteit van Swiftkey op iOS komt grotendeels overeen met die van de Android-versie. Ten opzichte van het standaard-iOS-toetsenbord zijn er behoorlijk wat verbeteringen, zoals ondersteuning voor het 'swipen' van woorden, het gelijktijdige gebruik van verschillende talen en woordvoorspelling in diverse talen. Ook kun je kiezen tussen twee kleurstellingen: licht en donker. Daarnaast kan Swiftkey optioneel jouw schrijfstijl leren door bijvoorbeeld je Gmail-, Twitter en Facebook-berichten te lezen. Al die informatie kan vervolgens opgeslagen worden in de cloud, zodat Swiftkey hetzelfde werkt op verschillende apparaten, zoals een iPhone en een iPad.
De bètaversie die wij konden testen mist overigens nog wel wat opties uit zijn Android-evenknie. Zo zijn er maar twee thema's beschikbaar, wordt Nederlands niet ondersteund en is het niet mogelijk om constant een rij met getallen weer te geven. Volgens het team achter Swiftkey wilde het eerst de basisfunctionaliteit op orde hebben en is het zeker de bedoeling om nog features en talen toe te voegen.
Deze nieuwe functie is voor Apple gelukkig geen aanleiding geweest om het iOS-toetsenbord met rust te laten; ook dat is verbeterd. Zo is er nu ondersteuning voor woordvoorspelling, een feature die Apple QuickType noemt. Helaas werkt QuickType op dit moment nog enkel in het Engels, waardoor we er in de Benelux weinig aan hebben. Daarom is het des te fijner dat het nu mogelijk is om andere toetsenborden te installeren.
Verbeteringen aan notificaties, widgets en Spotlight
Een tweede nieuwe functie waarmee gebruikers gebaat zijn, is de uitbreiding van notificaties en het notificatiecentrum in zijn geheel. Ontwikkelaars kunnen hun notificaties nu aanvullen met invoervelden en knoppen. Apple heeft zelf al het goede voorbeeld gegeven met bijvoorbeeld de Messaging- en Mail-apps. Als je een sms of iMessage binnenkrijgt, kun je vanuit de notificatie boven aan het scherm meteen een reply intikken in een klein invoerveld. En bij een e-mail kun je vanuit die positie het mailtje meteen als gelezen markeren of verwijderen.
Voor mensen die veel mailtjes en berichtjes binnenkrijgen, is de extra functionaliteit erg handig en we hopen dan ook dat app-ontwikkelaars hier snel op inspringen; iCulture meldt dat verschillende Nederlandse apps het in de toekomst in ieder geval zullen ondersteunen. Het invoerveld en de knoppen verschijnen vooralsnog alleen als je de notificaties boven aan het scherm laat verschijnen; bij de zogeheten toast-berichten in het midden van het scherm zie je ze niet. Dat zou nog een mooie toevoeging zijn.
Een andere wijziging heeft betrekking op de widgets die in het notificatiecentrum staan; gebruikers kunnen nu zelf bepalen in welke volgorde ze widgets willen zien. Daarnaast heeft Apple het widget-deel van het notificatiecentrum opengesteld voor ontwikkelaars. In iOS 8 kunnen alle apps dus widgets weergeven. Als je dus een eigen weer-app prefereert boven die van Apple, kun je de voorspelling in het notificatiecentrum krijgen en dit biedt ook kansen voor bijvoorbeeld nieuws-apps.
Ook Spotlight, de ingebouwde zoekfunctie, kent nieuwe functionaliteit. Er wordt nu niet enkel meer op de telefoon zelf gezocht, maar ook op verschillende webdiensten, waaronder Google, Wikipedia, iTunes en de App Store. Vooral dat laatste is handig, omdat een app zoeken via Spotlight in de praktijk sneller is dan via de App Store zelf.
Apps kunnen eindelijk met elkaar praten
De belangrijkste nieuwe feature onder de motorkap is wat Apple 'App Extensions' noemt. Dit is een verzamelnaam voor een reeks api's die ervoor moeten zorgen dat apps beter integreren met iOS en daarbij ook met elkaar kunnen communiceren. De eerdergenoemde widgets in het notificatiecentrum en de custom toetsenborden maken onderhuids ook gebruik van deze extensies.
In onze ogen is de Share-extensie het meest vernieuwend, althans, voor iOS. Voorheen waren alle Share-opties in iOS door Apple zelf ingebakken; de Twitter- en Facebook-deelopties komen dus niet van de desbetreffende apps, maar zijn door Apple zelf gemaakt in samenwerking met die twee bedrijven. Dat is natuurlijk een enorm inefficiënte werkwijze. Het kost veel tijd en is ook nadelig voor gebruikers; als Apple besluit een bepaalde dienst niet te ondersteunen hebben ze pech.
Gelukkig heeft Apple voor iOS 8 een voorbeeld genomen aan Android en is het voor ontwikkelaars nu mogelijk om aan te geven dat hun applicatie gebruikt kan worden om dingen te delen, zoals foto's, url's of tekst. Die apps verschijnen dan vanzelf in het Share-menu. Verwacht maar dat veel apps hiervan gebruik gaan maken, vooral sociale netwerken als Instagram, Pinterest en misschien zelfs Google+, dat tot nu toe om begrijpelijke redenen niet door Apple werd ondersteund.
Bovenstaande menu's kunnen in iOS 8 door ontwikkelaars worden uitgebreid
De nieuwe extensies laten zich goed combineren met de nieuwe api voor Touch ID, die ontwikkelaars gebruik laat maken van de vingerafdrukscanner op de iPhone 5s, 6 en 6 Plus. Vanaf iOS 8 kun je dus via je vingerafdruk inloggen in apps die het ondersteunen, maar het maakt nog meer mogelijk. Passwordmanager 1Password heeft bijvoorbeeld een extensie ontwikkeld waarmee de dienst gekoppeld kan worden aan het inlog-scherm van een iOS-app. De ontwikkelaars van de app hoeven daarvoor enkel een klein beetje code toe te voegen.
Een laatste extensie die we er nog even uitpikken, is de Storage Provider, waarmee elke app een bron van bestanden voor andere apps kan zijn. Mocht een toekomstige versie van de Dropbox-app dit bijvoorbeeld ondersteunen, dan zou je dus vanuit andere apps direct bestanden uit je Dropbox kunnen openen.
Android-gebruikers die dit lezen, vragen zich misschien af wat hier allemaal bijzonder aan is, want veel van deze mogelijkheden zitten al jaren in Googles besturingssysteem. Dat klopt helemaal, maar dat maakt de functies voor iOS-gebruikers niet minder handig en welkom.
Veel nieuwe api's voor ontwikkelaars
Onder de motorkap heeft Apple wellicht nog meer aangepast dan aan het oppervlak. Naast de App Extensions, die we op de vorige pagina bespraken, zijn er nog meer api's en diensten bijgekomen waar apps nu gebruik van kunnen maken. Zo is er HealthKit; daarmee kunnen fitness-apps hun vergaarde data wegschrijven naar Apples eigen Health-app. Daarmee heb je als gebruiker één overzicht van alle data en statistieken op dat gebied.
Naast HealthKit zijn er nog twee kits: HomeKit en Cloudkit. Die eerste is bedoeld om allerlei domotica-oplossingen in en rondom het huis te besturen. Volgens Apple moet het met de set api's mogelijk zijn om bijvoorbeeld sloten, camera's, lichten, stopcontacten en allerlei schakelaars aan te sturen vanaf een iOS-apparaat. HomeKit biedt daarbij ondersteuning voor Siri-integratie, zodat dit alles met stemcommando's kan gebeuren.

Cloudkit, Healthkit en Homekit
Het klinkt indrukwekkend, maar het succes zal volledig afhangen van de ondersteuning door de markt. Apple presenteerde op WWDC een lijst van partners, maar slechts een of twee daarvan hebben tot nu toe daadwerkelijk producten laten zien. We kunnen ons nog goed de introductie van Android@Home herinneren. Dat gebeurde in 2011 en sindsdien hebben we er niets meer over gehoord. Hopelijk vergaat het Apples oplossing beter.
Met Cloudkit kunnen applicaties data en grote bestanden stallen bij Apples iCloud-servers, waar ze de beschikking hebben over een filesystem en databases. Zo is data altijd toegankelijk als een app op een nieuw apparaat geïnstalleerd wordt of als een bestaand apparaat gereset wordt.
Voor gaming gaat de Metal-api waarschijnlijk een grote rol spelen in de toekomst. Op dit moment wordt voor iOS-games nog OpenGL ES gebruikt, net als op Android. Metal werkt op de iPhone 5s en 6, en moet ontwikkelaars meer controle over de gpu geven en de overhead op api-niveau verminderen. Daarmee zijn de doelstellingen grotendeels gelijk aan die van AMD's Mantle en de DirectX12-api van Microsoft. Tijdens WWDC en de iPhone-introductie toonde Apple al games die Metal gebruiken. Onder andere de Unreal- en Unity-engines, veelgebruikt voor mobiele games, zullen de api ondersteunen.
Helaas!
De video die je probeert te bekijken is niet langer beschikbaar op Tweakers.net.
Een demonstratie van de Unreal Engine en Metal-api
Meer mogelijkheden voor de camera
In de Camera-app zijn opties toegevoegd. Zo is er een time-lapse-modus. Die is aardig en werkt goed, maar vereist dat het iOS-apparaat gedurende lange tijd op dezelfde plek blijft staan. Het is dus wel een heel specialistische functie. Ook zit er nu een timer in de Camera-app. Die telt met grote cijfers in beeld af naar het maken van een foto. Handig voor bijvoorbeeld een groepsfoto. Daarnaast is het nu mogelijk om focus en belichting los van elkaar te regelen; met één tik op het scherm stel je scherp en vervolgens kun je een slider naar boven of beneden bewegen om de belichting bij te stellen. Het is een fijne toevoeging, zeker voor situaties met moeilijke lichtomstandigheden.
/i/2000545093.png?f=imagenormal)
Belangrijker zijn echter de aanpassingen op api-niveau. In het verleden waren ontwikkelaars van camera-apps nogal beperkt in hun mogelijkheden bij het aanspreken van de camera. In iOS 8 krijgen ze echter vrijwel complete controle over de sensor en lens. Zo is het nu mogelijk om de sluitertijd, iso-waarde en witbalans zelf te regelen vanuit een app. Daarnaast biedt de api zelfs ondersteuning voor bracketing met iso, sluitertijd en belichting. Dat alles brengt de mogelijkheden op dit gebied op ongeveer hetzelfde niveau als die van de gerenommeerde Lumia-telefoons met PureView-camera's.
Al die mogelijkheden worden helaas niet in de standaardcamera-app van Apple gebruikt. We snappen dat Apple de interface simpel wil houden, maar een soort 'advanced'-optie was leuk geweest. Het is dus wachten tot ontwikkelaars van alternatieve camera-apps deze nieuwe api gaan benutten. Of wellicht gaat Apple dat zelf doen in een volgende versie van iOS. Het is hoe dan ook een fijn vooruitzicht, want een gebrek aan instellingen was tot nu toe het grootste kritiekpunt op de iPhone-camera's.
Tot slot
Naast alle zaken die op de vorige pagina's genoemd zijn, bevat iOS 8 nog vele andere kleine en grote wijzigingen. Zo kunnen iTunes- en App-aankopen gedeeld worden via Family Sharing, heeft Apple een eigen cloudstorage-variant, iCloud Drive genaamd, kun je in de Messaging-app spraak, foto's en video's delen en zijn er nu uitgebreidere batterijstatistieken zichtbaar. Daarnaast zijn er natuurlijk nog Handoff en Continuity, waarmee je een handeling, bijvoorbeeld een e-mail opstellen, kunt beginnen op je iPhone en vervolgen op je iPad of Mac.
Als Apple dus zegt dat iOS 8 de grootste update van het besturingssysteem tot nu toe is, lijkt dat niet overdreven. Natuurlijk zijn er nog genoeg zaken die we graag verbeterd zouden willen zien. Een mogelijkheid om een iPhone zonder iTunes te beheren bijvoorbeeld of een standaardcamera-app die uitgebreide instellingen biedt. De mogelijkheid om zelf standaard-apps in te stellen voor zaken als e-mail, sms en browsing zou ook welkom zijn.
Wat we voor nu echter het interessantst vinden, is dat Apple met iOS 8 een nieuwe weg in lijkt te slaan. Een deel van de innovatiekracht en vernieuwingsmogelijkheden wordt overgedragen aan app-ontwikkelaars. Voor verbeteringen op het gebied van invoer zijn we niet meer afhankelijk van Apples toetsenbord en het is ook niet meer Apple die bepaalt of je foto's en andere zaken wel of niet via je favoriete sociale netwerk kunt delen. IOS wordt dus wat meer 'open'.
Daarmee lijken de wijzigingen die Apple zelf heeft doorgevoerd pas het begin. In de komende weken en maanden gaan we pas echt zien wat ontwikkelaars allemaal gaan doen met de nieuwe App Extensions en met api's als, Metal, HealthKit, HomeKit en Cloudkit.