iOS 9 komt er aan! Welke invloed heeft dit op jouw app?

15 min read - 24/06/2015

Auteur
o-craig-federighi-facebook_5e66de781b0d48adb1ae159121fea7a3

8 juni ging de jaarlijkse conferentieweek van Apple voor ontwikkelaars weer van start. Deze week wordt altijd afgetrapt met een presentatie waarin de grootste veranderingen in haar software worden aangekondigd. Onder deze software valt ook iOS, welke rond augustus/september beschikbaar zal worden voor de consumenten. Deze updates bevatten vooral stabiliteitsverbeteringen onder de motorkap, maar ze voegen ook enkele nieuwe functies en mogelijkheden voor ontwikkelaars toe.

Omdat sommigen van deze veranderingen invloed hebben op onze apps als ontwikkelaars zijnde, lichten wij deze veranderingen graag toe. Hierdoor kunnen wij al op tijd nadenken over onze voordelen van de nieuwe versie van het besturingssysteem.

Tevens is het belangrijk om er zeker van te zijn dat je app ook vloeiend blijft werken op de nieuwe versie. Vanwege de update kan het namelijk voorkomen dat de code van jouw app, of de gebruikte SDK’s in jouw app niet meer vlekkeloos samenwerken met de OS. Hiervoor is het nodig dat de code wordt geoptimaliseerd en de SDK’s worden geüpdatet om ook de updates van iOS te ondersteunen.

De integratie van jouw app in iOS 9

Multitasking voor iPad

Vanaf iOS 9 is het mogelijk om op iPads te multitasken. Dit houdt in dat er 2 apps tegelijkertijd in beeld getoond kunnen worden. Dit kan op 3 verschillende manieren:

  • SlideOver
  • Split view
  • Picture-in-picture

Ik licht de 3 opties toe.

SlideOver

Bij SlideOver kun je vanaf de rechterkant van het scherm een app kiezen om deel over je huidige scherm te trekken. Hierdoor bedekt de tweede app eerste app deels. Daarom is er ook Split view.

Ondersteuning: iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 en toekomstige iPads

Split view

Hierbij kun je de app verder trekken en staan de eerste en tweede app naast elkaar.Het mogelijk om de verdeling tweederde/eenderde te gebruiken voor de liggende en staande stand. Voor de liggende stand is het ook mogelijk om een verdeling van 50/50 aan te houden.Wanneer je hier vervolgens de app doortrekt naar links zal de tweede app de eerste app overnemen en is dit nog de enige app in beeld op dat moment.

Ondersteuning: iPad Air 2 en toekomstige iPads

Picture-in-picture

De laatste optie geldt alleen voor video-ondersteuning. Wanneer je namelijk gebruik maakt van video, is het nu ook mogelijk om je video te laten doorspelen terwijl je de app verlaat. je ziet dan de video in een willekeurige hoek van je scherm en je kunt de video verkleinen of vergroten.

Ondersteuning: iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 en toekomstige iPads

Kijk voor meer informatie over multitasken in iOS 9 op www.iculture.nl/multitasken-ipad-ios-9/

Wat dit inhoudt voor ontwikkelaars

Ontwikkelaars kunnen multitasking voor iPad ondersteunen door hun app hiervoor te optimaliseren waardoor de gebruikers ook deze handige functie kunnen gaan gebruiken met hun app.

Deze optimalisatie is vergelijkbaar met de optimalisatie van de resolutie van iPhone voor iPhone 6 en iPhone 6 Plus, omdat er gebruik gemaakt moet gaan worden van flexibele interfaces. Hierbij komen nog wel enkele zaken kijken zoals flows bij het switchen van bijvoorbeeld de verhouding ⅓ naar 50/50.

Wanneer deze implementatie wordt gedaan, wordt het ook gemakkelijk om zowel de liggende als de staande stand van de app te ondersteunen, zo beweert Apple. Dit maakt deze implementatie nog wat interessanter, omdat dit een goede toevoeging is voor de gebruikersbeleving!

Zoeken

Een andere zeer interessante mogelijkheid voor ontwikkelaars is het ondersteunen van indexering, waardoor de iOS-gebruiker resultaten van jouw app of website kunt vinden tijdens het zoeken in de zoekfunctie van Apple. Deze zoekfunctie is te vinden wanneer je op het thuisscherm van iOS naar beneden of naar links swipet. Tevens is deze zoekfunctie verwerkt in de browserbalk van Safari.

In iOS 8 krijg je hier al verschillende resultaten die Apple zelf heeft geïndexeerd op basis van algemene info van apps en websites, maar dit is nog zeer oppervlakkig. Doordat Apple vanaf iOS 9 de mogelijkheid aan ontwikkelaars geeft om ook content te laten ondersteunen breidt dit de zoekmogelijkheid uit van iOS, maar is dit tevens een goede kans voor promotie van apps. Zo kunnen nu ook resultaten van apps naar voren komen terwijl de gebruiker de apps nog niet eens heeft geïnstalleerd. Ik licht de verschillende toepassingen toe.

Contentindexering

Wanneer je app is geoptimaliseerd voor contentindexering, komt de content uit je app dus naar voren bij het zoeken in de zoekfunctie. Zoek je bijvoorbeeld op ‘appels’ en komt dit woord voor in jouw app, dan komt die naar voren in de zoekresultaten. De indexering wordt lokaal op het toestel opgeslagen en zal daarom privé blijven. Anderen zullen geen privé-informatie van gebruikers kunnen inzien.

Als de gebruiker op een resultaat tikt, komt de gebruiker direct op het juiste scherm in je app binnen doordat er gebruik wordt gemaakt van verdiepende applinks. Deze applinks zijn dezelfde als er voor de functie handoff wordt gebruikt, welke in iOS 8 in geïntroduceerd. Deze functie houdt in dat de gebruiker vloeiend van zijn iPhone verder kan gaan op zijn iPad of Mac, op hetzelfde scherm. Dit houdt in dat wanneer je app contentindexering ondersteunt, ook automatisch handoff ondersteunt.

Lees hier meer over handoff: www.iculture.nl/gids/handoff-gebruiken-mac-iphone-ipad/

Publieke suggesties

In eerste instantie zijn alle suggesties dus privé en alleen afkomstig van de apps op je toestel. Met een kleine toevoeging is het echter ook mogelijk om de resultaten te laten ondersteunen voor gebruikers die jouw app nog niet gebruiken. Hierdoor kunnen gebruikers die zoeken op ‘appels’ ook de suggestie krijgen voor jouw app en zullen ze hierdoor worden aangeraden om de app te downloaden en installeren. Hoe vaker jouw app wordt gekozen in de resultaten, hoe vaker jouw app in de resultaten naar voren zal gaan komen. Goede implementatie van deze indexering kan dus veel promotie opleveren!

Webopmaak

Ook ondersteuning voor websites in de zoekfunctie is uitgebreid om onder andere de koppeling tussen een website en app met dezelfde content dichterbij elkaar te brengen. Hiervoor waren natuurlijk smartbanners een optie, maar dit bracht je slechts naar de app en meer niet.

Door de id’s in de genoemde applinks ook te verwerken in je website kan de zoekfunctie de directe koppeling van de pagina’s leggen met de schermen in de app. Hierdoor wordt ook direct weer handoff mee ondersteund, waardoor de gebruiker van de app op zijn iPhone of iPad direct de bijbehorende pagina op zijn Mac kan openen met 1 klik op de muis. Hij hoeft daardoor niet vervolgens zelf weer de bijbehorende pagina te zoeken.

Hiernaast kun je de resultaten van je website in de zoekfunctie voortaan beter vormgeven met verschillende elementen:

  • Thumbnail
  • Titel
  • Subtitel
  • Sterren voor waardering
  • Aantal waarderingen

Tevens kun je elementen toevoegen waardoor de gebruiker meteen vanuit de zoekresultaten jou kunt bellen, naar je adres navigeren of je muziek of video afspelen. Voor de optie om meteen te bellen of te navigeren naar je adres is natuurlijk op deze manier een veel toegankelijkere actie om te maken.

Implementaties en ondersteuningen voor jouw iOS-app

Snelle schakeling tussen app en browser

iOS 9 maakt de overgang van apps naar Safari een stuk toegankelijker. Zo heb je als gebruiker niet meer het gevoel dat je de app verlaat en kun je heel gemakkelijk weer terug navigeren van de browser naar de app. Deze zelfde techniek wordt gebruikt bij het navigeren van zoekresultaten in de nieuwe zoekfunctie naar Safari.

Dit zou dus een goed alternatief zijn voor een in-app-browser als je app hier gebruik van maakt, maar hiernaast is het vanaf iOS 9 nu ook mogelijk om Safari als in-app-browser te gebruiken. Hierdoor verlaat de gebruiker dan helemaal niet de app, maar belandt hij in een aangepast versie van Safari in de app. Hierdoor heb je het beste van beide. De gebruiker hoeft de app niet te verlaten en heeft het grootste voordeel van Safari waardoor hij nooit meer hoeft in te loggen als je dat al eerder hebt gedaan.

Acties vanuit notificaties

Sinds iOS 8 is het mogelijk om direct op notificaties te reageren, zonder de app eerst in te moeten gaan. Je kunt reageren door een actie te laten uitvoeren, deze acties zijn per notificatie voorgedefinieerd in de app. Hierdoor kun je bijvoorbeeld bij een nieuwe e-mail ervoor kiezen op de e-mail direct te markeren als gelezen of zelfs meteen te verwijderen.

In iOS 9 is het voor apps van derden nu ook mogelijk om te reageren zonder de app in te hoeven door een bericht terug te sturen, bijvoorbeeld als antwoord op de e-mail.

Ook kunnen ontwikkelaars gebruikers nog concretere acties laten maken door een notificaties, maar dit lijkt nog niet verder gespecificeerd door Apple en is dus nog onduidelijk.

App thinning

Bij het ontwikkelen van apps moet er altijd rekening worden gehouden met verschillende soorten apparaten, in het geval van iOS zijn dit iPhones en iPads met verschillende schermverhoudingen, resoluties, processoren, geheugen en zo zijn er nog een aantal zaken. Hierdoor ontstaat er verschillende code en ontstaan er verschillende bestanden in de app waarvan enkelen gebruikt worden afhankelijk van het toestel. De app download dus eigenlijk altijd meer data dan waarvan hij gebruik zal gaan maken.

Daarom introduceert Apple nu app thinning. Hierdoor kun je app zo opbouwen dat er bij het downloaden van de app enkel de delen gedownload worden die van toepassing zijn op het apparaat waarop het wordt gedownload. Hoe groter de app wordt, hoe interessanter dit wordt natuurlijk.

Aanvullend hierop is het on demand-gedeelte. Dit zorgt ervoor dat niet meteen alle benodigdheden van de app worden gedownload, maar alleen het gedeelte dat initieel nodig is. Een concreet voorbeeld is met een spel. Zo heb je in het begin van een spel altijd level 1 nodig, maar level 4 nog niet. Hierdoor kan het downloaden van level 4 worden uitgesteld, waardoor de grootte van de app beperkt wordt. Naar mate de gebruiker richting level 4 raakt, kan het automatisch gedownload worden en kunnen de benodigdheden van level 1 verwijderd worden.

Nogmaals, het toepassen hiervan zal pas interessant worden wanneer de grootte van de app toeneemt. Wat mij betreft ligt deze grens bij 100mb. Dit is namelijk de grens van het kunnen downloaden van een app over het netwerk van je provider. Wanneer je app groter is dan dit, is het alleen mogelijk om de app via wifi te downloaden. Natuurlijk is het belangrijk om in alle gevallen je app zo klein mogelijk te houden, omdat er ook iPhones zijn met slechts 8gb welke dus niet veel data kunnen opslaan

HomeKit, HealthKit, MapKit en CloudKit

iOS biedt ontwikkelaars standaard SDK’s aan welke als basis van code kunnen dienen. Dit noemen ze een kit. Zo zijn er veel kits, zoals HomeKit, HealthKit, MapKit, CloudKit, StoreKit, WatchKit, SceneKit, UIKit en nog vele anderen. Deze kits krijgen bij elke major iOS-update ook altijd een update waardoor er meestal meer opties worden gegeven, maar natuurlijk gaat het ook om verbetering van de stabiliteit en andere zaken als compatibiliteit met de nieuwe iOS-versie. Deze redenen maken het belangrijk om deze SDK’s te updaten, maar dit geldt natuurlijk ook voor SDK’s van andere partijen die eventueel gebruikt worden in de app.

Conclusie

Zoals je weet is het dus belangrijk om je apps up-to-date te houden. Dit is aan de ene kant door mee te gaan met de ontwikkelingen van de platformen, maar aan de andere kant natuurlijk ook de ondersteuning waardoor je apps volledig en goed blijven werken. iOS-gebruikers updaten altijd vrij snel hun iPhones en iPads en dezelfde toestellen die compatibel waren voor iOS 8, zijn dat ook voor iOS 9. Hierdoor is het belangrijk dat je je apps goed blijft monitoren, onderhouden en optimaliseren. Het laatste wat je wilt is dat je gebruikers gaan afhaken, omdat de gebruikersbeleving niet (meer) goed is doordat de ontwikkeling stil blijft staan en er zelfs misschien bugs in komen en/of blijven zitten.

Dit is dan ook de reden dat wij je alvast voorbereiden op de komende veranderingen en je extra bewust te maken. Rond de lancering van iOS 9 zullen wij hier nog op terug komen, tevens omdat nu wellicht nog niet alle informatie is prijsgegeven door Apple. We houden je hiervan op de hoogte, zodat je apps niet achter hoeven te blijven en zullen verouderen, maar juist kunnen meegaan met de vernieuwingen en steeds beter kunnen worden voor je gebruikers!

Wij horen het graag wanneer jullie willen dat wij een controle gaan doen op de ondersteuning van je app op de nieuwe versies van het besturingssysteem, maar natuurlijk ook wanneer jullie ons advies willen ontvangen over mogelijke optimalisaties op basis van deze komende vernieuwingen!

Auteur
Johan Poland

Johan is een Product Owner bij Fish on Fire. Als langstzittende werknemer is hij een ware expert in zijn vak. Hij is het aanspreekpunt voor de klant en zorgt voor een soepel verloop van projecten binnen Fish on Fire.

Datum:

24/06/2015