3 juni 2014

[WWDC 2014] iOS 8 SDK met meer communicatie tussen applicaties

Gisteren hebben we meerdere artikelen geschreven over het WWDC van dit jaar. Met iOS 8, OSX Yosemite en natuurlijk de gebruikelijke statistieken. Waar we het niet over gehad hebben, is de SDK voor iOS 8. Apple heeft voor het eerst een groot deel van de tijd voor de keynote gebruikt om hierover te vertellen. Daar gaan we het in dit artikel over hebben.




Als je al vrij lang Apple-producten gebruikt, dan weet je waarschijnlijk wel dat applicaties altijd in een soort sandbox omgeving draaien. Dit houdt in dat wat er in de app gebeurt, dat blijft daar. Apps kunnen geen gebruik maken van veel iOS-functies, zoals Siri, Touch ID enzovoort. Met iOS 8 gaat dat compleet veranderen. Nog nooit heeft Apple ontwikkelaars zoveel toegang gegeven tot het systeem. En het mooiste is dat het niet ten koste gaat van de veiligheid van de gebruiker.

Dat komt omdat bij het versturen van een opdracht naar een andere app deze eerst door de controle van iOS gaat. Daarna gaat het naar de andere applicatie. Het is echter moeilijk een voorbeeld te noemen van wat dit werkelijk kan betekenen. Want er zitten nog altijd beperkingen aan.

Zeker is dat Apple ontwikkelaars de mogelijkheid gaat geven om bijvoorbeeld apps aan de bekende sharesheet toe te voegen. Nu zijn hier standaardapps als Twitter, Facebook en soms Flickr of Vimeo te vinden. Met iOS 8 kan een ontwikkelaar dadelijk eenvoudig apps als Pinterest toevoegen, zoals Craig Federighi gisteren al als voorbeeld toonde bij de presentatie van de functie. Ook de rij met opties voor printen, afspelen via AirPlay enzovoort kan met de nieuwe SDK worden aangepast door ontwikkelaars. Dit was in feite al mogelijk, maar alleen met basistaken.


Craig vertelde ook dat ontwikkelaars hun fotofilters kunnen implementeren, zodat gebruikers deze via de standaard fotoapplicatie kunnen toepassen. Dit zou kunnen betekenen dat je zonder third-party applicaties via de standaardapp meer filters dan ooit kunt toepassen, zonder deze te hoeven verlaten. Je krijgt in plaats daarvan dan een scherm van die third-party app te zien. Pas de filter toe die je wilt, tik op 'Klaar' en je wordt weer teruggestuurd met het toegepaste filter.

In het artikel over de aankondiging van iOS 8 schreven we al over de mogelijkheid om widgets toe te voegen in berichtencentrum. Dit is één van de dingen die voor ontwikkelaars erg gunstig zal zijn. Vooralsnog is het niet heel duidelijk wat er daadwerkelijk aan widgets beschikbaar komt, maar Apple toonde een demo met de SportsCenter-app. Die geeft in een oogopslag wat de scores zijn voor bepaalde teams. Uiteraard blijf je als gebruiker verantwoordelijk voor wat je voor widgets in het berichtencentrum wilt hebben. Onderaan zit een knop met 'Wijzig'. Je zult over een app moeten beschikken die widgets bevat. Dus als je bijvoorbeeld een Twitter-widget wilt toevoegen, dan moet je de Twitter-app hebben. Tevens moet Twitter een widget hebben ontwikkeld. Die wordt dan aan het lijstje met beschikbare widgets toegevoegd, zodat jij die in slechts een paar stappen kunt toevoegen.



Een andere gewenste mogelijkheid voor iOS was om keyboards van andere ontwikkelaars toe te voegen. Met iOS 8 wordt deze wens vervuld. Apple kondigde aan dat van Flesky, Swype en SwiftKey een keyboard naar iOS komt. Zodra deze beschikbaar zijn zal de gebruiker deze system-wide kunnen toepassen. Met andere woorden, je kunt het dan in elke app gebruiken.




Beheer van bestanden is in iOS altijd erg slecht geweest. Je kon alleen in specifieke apps toegang krijgen tot de documenten die je aan had gemaakt, maar verder was er geen controle over. Dat maakte apps als Dropbox en OneDrive erg nutteloos. Met iOS 8 wil Apple hier verandering in brengen door de aankondiging van iCloud Drive. Deze moet gaan concurreren met de net genoemde diensten. Echter, die diensten zullen voortaan ook hun eigen toepassing kunnen implementeren. De bedoeling is dat uiteindelijk dat je zelf kunt bepalen waar je documenten, spreadsheets, presentaties enzovoort moeten komen.



Naast bovengenoemde vernieuwingen voor de ontwikkelaar én consument zijn er nog API's voor andere functies aangekondigd. Touch ID bijvoorbeeld. Ontwikkelaars kunnen als ze willen hun apps voorzien van beveiliging met je vingerafdruk. Bij de aankondiging van de iPhone 5s, het eerste apparaat met Touch ID, bleek dat het zich beperkte tot de ontgrendeling van het apparaat en de login bij de App Store, iTunes Store en iBookstore. De Touch ID geeft ontwikkelaars de mogelijkheid de sublieme beveiliging van je vingerafdruk aan hun apps toe te voegen.


Met PhotoKit kunnen ontwikkelaars hun apps zodanig aanpassen dat gebruikers de fotorol niet meer hoeven te verlaten om een foto aan te passen. Nu wordt een foto altijd geïmporteerd wat voor een hoop rotzooi zorgt. Met de Camera API krijgen ontwikkelaars meer controle over de belichting, scherpstellen en witbalans als toevoeging aan de elementen die een third-party eventueel al heeft. Deze opties waren tot iOS 7 altijd alleen in de standaard camera-app te vinden.


Het nieuwe HealthKit gaat gezondheids- en fitness-apps nog nuttiger maken. Dankzij een app in iOS 8, Health genaamd, krijgen third-party apps meer overzicht van de gezondheid van iemand. HomeKit moet domotica in huis gaan stimuleren door diepgaande connectie met accessoires zoals de Nest-thermostaat. Met behulp van spraakassistent kun je dan eenvoudig het de thermostaat een hoger of lager zetten. En het beperkt zich natuurlijk niet alleen tot dat. En dan tot slot CloudKit. Hiermee kunnen ontwikkelaars de volledige controle over iCloud krijgen, zoals eerder eigenlijk al werd uitgelegd bij het onderdeel over beheer van bestanden.


En dan is er nog Handoff. Een feature die ervoor moet zorgen dat iOS-apparaten beter met elkaar kunnen samenwerken. Ook met de Mac trouwens. Het idee achter Handoff is simpel: wanneer je bijvoorbeeld op je iPad bezig bent met een document, dan verschijnt op je iPhone een icoontje van de app waarin je werkt. Houd je vinger erop en sleep het naar boven. De applicatie wordt dan geopend op dat apparaat, zodat je verder kunt werken. Op de Mac is het gewoon een kwestie van de desbetreffende app handmatig openen.


We zijn nog niet klaar, hoor. Apparaten met een A7-chip gaan deze chip nog meer benutten met iOS 8, dankzij SpriteKit, SceneKit en Metal. De kwaliteit van zowel 2D-games als 3D-games zou er flink op vooruit moeten gaan. Vooral met Metal, waarmee in principe de kwaliteit van een game op een moderne high-end console zou kunnen worden aangeboden. De iPhone 5s, iPad Air en iPad mini met Retina-display zijn de enige apparaten die hier voordeel uit kunnen halen. Met een nieuwe iPhone op komst in september wordt dat lijstje gelukkig wel wat langer.


Tot slot kondigde Apple een nieuwe programmeertaal genaamd Swift aan. Craig Federighi zei op het podium dat het 'Objective-C' (de programmeertaal waarmee normaal altijd iOS- en OSX-apps worden ontwikkeld) zonder de 'C' is. Dus Objective. Swift biedt meer mogelijkheden dan ooit en het is een stuk simpeler opgebouwd.

Geen opmerkingen:

Een reactie plaatsen