• Portretfoto van Kees Hink
    Kees Hink

Mobiele app of web app?

Voor alles is er wel een app. Maar wat zijn eigenlijk nu nog de voordelen van een mobiele app (native Android of iOS) tegenover een web-applicatie (in de browser)? Om te zorgen dat deze inleiding uitnodigt tot klikken geven we een lijst met vijf dingen die tegenwoordig in een web-applicatie kunnen, en die je zullen verbazen!

De geschiedenis

De vraag is eigenlijk: Waarom zijn we tevreden met websites op onze computer of laptop, maar minder op onze telefoon of tablet?

De belangrijkste factor is dat toen de smartphones opkwamen, het web niet klaar was voor verschillende schermgroottes. Als je iets wilde op een mobiele telefoon moest je een app maken.

The first IPhone
The first IPhone

Ook kon je geen gebruik maken van de sensors van de telefoon. Alleen native apps konden dingen als de GPS-locatie, camera en bewegingssensor gebruiken.

De situatie nu

Inmiddels is er veel veranderd. Web-pagina's worden bijna altijd ontwikkeld voor alle schermgroottes.

Het fenomeen Progressive Web App (PWA) heeft zijn intrede gedaan. Dit zijn apps die lokaal data opslaan. Deze apps kunnen draaien zonder internetverbinding. Ze synchroniseren data alleen als er verbinding is.

De pagina What PGA Can Do Today geeft een uitgebreid overzicht van wat er tegenwoordig allemaal kan met de browser op je telefoon. En dat is veel!

Bedrijven als Uber, AliExpress, Tinder en Spotify hebben web apps waarmee ze dezelfde functies bieden als hun native apps. Deze apps worden aangehaald als voorbeelden van een goede PWA.

Vijf dingen waarvan je niet wist dat het kon in een web app

  • Meldingen sturen (notifications)
  • Geluid opnemen
  • Foto's maken
  • NFC's uitlezen
  • Contacten van je telefoon selecteren
Pocket knife with many functions
Pocket knife with many functions

De keuze: web app of native app?

Met alle mogelijkheden is de web-applicatie tegenwoordig vaak een waardig alternatief voor de native app. Maar hoe maak je een keuze?

Je kunt niet zeggen dat een native app altijd beter is dan een web app, of omgekeerd. Er zijn wel een paar dingen waarop je kunt letten. Hieronder geven we er een paar:

Gebruikerservaring

Native apps bieden vaak de beste gebruikerservaring. Het ziet er allemaal netter uit, en schermen reageren vaak beter.

Kosten

Het ontwikkelen van een native app moet altijd gebeuren voor de twee platforms, Android en iOS.

Er zijn technieken om dezelfde codebase te gebruiken voor allebei de platforms. Dit heet "cross-platform", React Native en Flutter zijn hier voorbeelden van. Maar de meeste app-ontwikkelaars ervaren toch dat het gedrag en uiterlijk niet helemaal hetzelfde is.

Daarom zijn er aan native apps vaak meer kosten verbonden.

Doorlooptijd

Een native app zal altijd goedgekeurd moeten worden door App Store of de Play Store. Dit proces kost tijd. Daarmee is het met een web app mogelijk om sneller de markt op te gaan.

Dit geldt ook voor het uitrollen van updates: Ook updates moeten goedgekeurd worden. Met een web app heb je geen vertraging bij het uitrollen daarvan.

Controle

De Play Store of App Store kan besluiten om je app of update te weigeren. Bijvoorbeeld omdat je iets doet of aanbiedt wat Apple of Google niet bevalt, of omdat ergens iets te zien is dat door sommige mensen als aanstootgevend ervaren wordt.

Je kunt je afvragen of je er akkoord mee bent om deze controle niet zelf te hebben.

Veiligheid

We benoemen dit omdat het ten onrechte wel eens als factor genoemd wordt in de keuze. Maar zowel web apps als native apps zijn uitstekend te beveiligen.

Bijvoorbeeld het "afluisteren" van de data die native apps naar de centrale database sturen. In het verleden werd deze data nog wel eens onbeveiligd verstuurd, waardoor iedereen deze kon afluisteren of zelfs aanpassen. Tegenwoordig komt dat nauwelijks meer voor.

Benodigde inputs en outputs

Sommige inputs zijn met een app makkelijker uit te lezen. Een native app kan nauwkeuriger een bewegingssensor uitlezen.

Ook het weergeven van geluid kan beter via een native app.

Als je app daarvan afhankelijk is moet je zeker voor native gaan.

Upgrades

Ook dit wordt soms genoemd als factor in de keuze, maar het maakt weinig verschil. Zowel web apps als native apps moeten onderhouden worden.

Voor allebei is het bijvoorbeeld belangrijk om security updates door te voeren. Regelmatig wordt ontdekt dat een gebruikt pakket kwetsbaar is. Zowel de native app als de web app zullen dan een update van dat pakket moeten installeren. Doe je dat niet, dan kun je erop wachten dat iemand dat lek misbruikt.

En zonder onderhoud zal de native app niet draaien op nieuwere versies van Android of iOS. Maar zonder onderhoud zal ook de web app langzaam ten onder gaan, omdat deze minder compatibel is met de moderne browsers.

Ook kun je gebruikers niet dwingen om de nieuwe versie te installeren. Je moet er dus altijd rekening mee houden dat een deel van je gebruikers een oude versie van je app gebruikt.

Toegankelijkheid

Er zijn apps in omloop die alleen maar informatie aanbieden. Vaak zijn dit zogenaamde "hybrid apps": een website met een schilletje eromheen zodat het als app kan draaien.

Als je alleen maar informatie aanbiedt, dan is een native app waarschijnlijk niet de beste keus. Een gebruiker die even snel iets wil weten wordt dan gedwongen om eerst de app te downloaden en installeren.

Ruimte op de telefoon

Niet iedere gebruiker heeft een oneindig grote opslag op de telefoon. Een app neemt vaak tientallen megabytes in beslag op je telefoon. Gebruikers die tegen de grens aan lopen moeten dus kiezen welke apps ze installeren.

Bij een web app kost alleen de data ruimte. De grootte daarvan variëert natuurlijk, maar zit vaker in de orde van kilobytes. Een aanzienlijk verschil voor wie weinig ruimte heeft.

Conclusie

Er is met web apps veel mogelijk. Wat voor jouw situatie de beste oplossing is hangt af van verschillende factoren.

Mocht je hierover willen sparren, bel, mail of vul onderstaand formulier in voor een vrijblijvend gesprek:

👋🏻 Neem contact met ons op

Bronvermelding en leesvoer

We love code