De multi-platform App

       @remivanbeekum    26765 x bekeken

De multi-platform App

Het bezit en het gebruik van Smartphones groeit hard in Nederland, inmiddels heeft bijna de helft van de Nederlanders een smartphone. En dus staan veel marketeers voor de keuze: Moeten we niet eens een app lanceren? Maar zo’n app is best duur, en je moet ook nog rekening houden met al die verschillende platformen, waardoor je dubbele kosten maakt. Gelukkig kan het ook simpeler, met een multi-platform app. Wellicht niet de Ferrari onder de apps, maar wel een goede oplossing voor de huidige markt.

Marktaandelen mobiele platformen in Nederland

Het is lastig om aan betrouwbare cijfers over Nederlandse marktaandelen van de verschillende mobiele platformen te komen. The Phone House deed in maart onderzoek (N=1000) waaruit bleek dat 34% van de Nederlandse smartphonegebruikers op Android is overgestapt. iOS volgt met 21%. Windows Mobile (17%), BlackBerry (16%) en Symbian (13%).

Zelf heb ik om verschillende redenen sterke bedenkingen bij deze cijfers, maar één ding maken ze wel duidelijk: De Smartphonemarkt is behoorlijk versnipperd. Apple is zeker geen alleenheerser meer. Nu Nokia overstapt van Symbian naar Windows Phone, welke met de Metro interface een flinke stap voorwaarts maakt, verwacht ik dat we de aankomende jaren zeker aan 3, wellicht zelfs 4 platformen vastzitten (iOS, Android, Windows Phone en wellicht Blackberry).

Wil je als marketeer een beetje bereik halen met je app, dan zul je deze dus in de meeste gevallen moeten uitbrengen op minimaal 3 verschillende platformen.

Verschil tussen mobiele site en een smartphone-app

Er zijn een hoop verschillen tussen een mobiele site en een app. Ik zal ze hier niet allemaal opsommen, maar eentje wil ik wel even uitlichten: Een mobiele site bekijk je via internet. Een App download je eenmalig (via de Android market, iOS App store of Windows Phone marketplace), waarna deze vanaf je smartphone draait.

Veel apps maken voor onderdelen wel weer gebruik van internet, maar een groot deel van data en de benodigde code staat dus al lokaal (of mobiel dus) op je smartphone. En dat is in veel gevallen belangrijk, want mobiel internet is in vergelijking met het internet thuis erg traag. Dit is een van de belangrijkste criteria bij de keuze tussen een mobiele site en een app.

Verschillende systemen, verschillende programmeertalen, dubbele kosten

Een ander groot verschil tussen de verschillende smartphone platformen, is de gebruikte programmeertaal. Bij iOS is dat Objective-C (en via wat omwegen ook andere versies van C), bij Android moet een app in JAVA ontwikkeld worden en bij Windows Phone C# (C Sharp). Blackberry (RIM) maakt bij nieuwere versies gebruik van J2ME.  Elk platform maakt dus gebruik van een andere taal.

En hierdoor maak je dus ook veel dubbele kosten. In principe moet bijna al het programmeerwerk per platform weer helemaal opnieuw gebeuren. Je kunt dus niet één app in drie platformen lanceren, je moet daadwerkelijk drie verschillende apps maken. En dat betekent dat je ook drie keer moet betalen.

Maar het kan goedkoper

Als je een marketeer van een middelgroot Nederlands bedrijf bent dat voor het eerst nadenkt over het lanceren van een app, dan wil je waarschijnlijk niet meteen grote risico’s nemen. Je wilt een app lanceren omdat je doelgroep er om vraagt, omdat je ervaring op wilt doen of om nieuwe mogelijkheden te bieden aan je klanten. Maar tegelijkertijd weet je nog niet goed wat een app je gaat opleveren en dus wil je de kosten in het begin laag houden.

Vaak wordt er dan gekozen om de app maar op één platform te lanceren. Zo houd je de kosten laag. Maar je bereikt ook maar maximaal 34% van de smartphonegebruikers in Nederland. En daarmee stel je dus 66% van je doelgroep teleur.

Een andere oplossing is de zogenaamde multi-platform app of cross-platform app.

De multi-platform app op basis van compilatie

Ontwikkelaars van apps proberen op verschillende manieren om hun app, zonder veel extra werk, alsnog op verschillende platformen te lanceren. Eén manier om dat te doen is door de code vanuit de ene taal te compileren naar een andere taal. Zo kun je bijvoorbeeld de code van je native Android app (JAVA) compileren/ porten/ converteren naar Objective-C.

Voordeel is dat je die code dus niet opnieuw hoeft te schijven. Nadeel is dat dat compileren lastiger is dan het lijkt. Het is niet even een druk op de magische knop. In de praktijk moeten delen van de code alsnog herschreven worden. Maar je pakt op deze manier natuurlijk wel tijdwinst.

De multi-platform app op basis van webtalen

Een andere manier om één app te maken die werkt op alle populaire mobiele platformen is op basis van webtalen als html, css en javascript. Alle toestellen kunnen immers websites tonen, dus kun je dat voordeel benutten voor je app.

Zo’n multi-platform app draait op basis van html, css en bijvoorbeeld jQuery Mobile. jQuery Mobile biedt een framework voor touch screens zoals smartphones en tablets. In dat framework vind je dus al een hoop standaard oplossingen voor menu’s, lijsten, formulieren en knoppen. Dat scheelt een hoop programmeerwerk aan de front-end en is makkelijk te leren voor iedere webontwikkelaar. Een kind kan de was doen!

Maar zoals ik hierboven al schreef wil je voor veel toepassingen geen mobiele site, maar een app. Die draait vanaf het toestel zelf en is daarom veel sneller. Daarnaast is de engagement van gebruikers van een app over het algemeen hoger dan van gebruikers van een mobiele site.

Het is dus belangrijk de, op basis van webtalen gemaakte, mobiele site om te zetten naar een app. Gelukkig zijn er tools als Titanium en Phonegap. Deze tools zetten je code met een paar drukken op de knop om naar de native code van de verschillende systemen zodat je de app wel gewoon via de app store, market en marketplace beschikbaar kunt stellen.

De nadelen van een multi-platform app

Natuurlijk zijn er ook nadelen aan een multi-platform app. Een échte native app zal bijvoorbeeld een hogere performance leveren. Afhankelijk van de functionaliteiten kan het dus zijn dat een multi-platform app een beetje langzamer is dan een native app.

Verder zijn er natuurlijk verschillen in de hardware. Om een simpel voorbeeld te noemen: Android toestellen hebben over het algemeen een ‘terug’ knop op het toestel zelf zitten. iPhones hebben die knop niet. En dus moet je in de app een terugknopje opnemen zodat gebruikers van een iPhone kunnen navigeren. Als je een uniforme app lanceert, staat die knop er dus bij Android gebruikers voor niets.

Een cross-platform app haalt dus net niet het maximale uit het toestel naar boven. De vraag is hoe erg dat is als daar tegenover staat dat de kosten fors lager zijn.

Conclusie

Zelf ben ik erg positief over de multi-platform apps en ik merk dat veel marketeers die ik dit verhaal vertel dat ook zijn. Je hoeft immers maar één app te ontwikkelen en je kunt hem toch beschikbaar maken voor verschillende soorten gebruikers. En als je wilt kun je hem ook als mobiele site aanbieden. Daarmee ben je veel goedkoper uit dan als je al die verschillende native apps moet ontwikkelen en kun je toch een groot bereik realiseren.

Als je primaire dienst een app is, of als je functionaliteiten een hoge performance van de hardware vragen, dan zou ik voor native gaan. Maar in de meeste andere gevallen volstaat een multi-platform app op dit moment. Mobiel internet groeit hard, maar tegelijk is het ook nog maar klein. In Nederland is mobiel goed voor 4 tot 5% van het internetverkeer.

Dit is dus het moment om in te stappen en te beginnen aan een app, maar begin beheerst, koop niet meteen een Mercedes die alleen op de afsluitdijk 130 mag, maar neem een betrouwbare middenklasser, die je overal naartoe brengt.

1

Gepost in: Mobile marketing , app marketing

9 Reacties

Goed stuk tekst. Wij ervaren als online en app ontwikkelaars ook deze issue. Nog wat zaken zijn bijvoorbeeld de verschillende schermresoluties bij bijvoorbeeld Android toestellen of het verschil alleen al tussen de iPad 1 en versie 2. De tweede versie heeft ondermeer een camera; in hoeverre maak je dergelijke functionaliteit in een iPad app wel of niet beschikbaar.

Wij hebben bijvoorbeeld een eigen Black Rooster iPhone en iPad app, maar meer als gimmick. Grafisch opgezet in vectoren, maar onze huisstijl / logo leent zich daar ook voor; hierdoor hebben wij één app gemaakt voor iOS platform en zit je niet met foto-resolutie/-kwaliteitsverschillen. Een Android app maken we misschien later nog wel een keer.

Zijn we een beetje gewend aan de online issues van PC vs/en Mac, en al hun browsers, krijg je al deze mobiele app-issues. Er zal wel nooit één standaard komen :-)

Chris | BlackRooster.nl

geplaatst op om 09:48 uur

Uitstekend stuk Remi.
Wij werken momenteel in een project aan een Augmented Reality app waarbij het lastig is om alleen vanuit HTML, CSS en JS te werken. We hebben daarnaast ook direct toegang nodig tot de sensoren van een toestel. We merken ook dat de neiging sneller uitgaan naar alleen een android en iphone app dan om echt op alle platformen te gaan ontwikkelen.

geplaatst op om 10:14 uur

Dat onderzoek van The Phone House is niet echt betrouwbaar. Dat is een onderzoek van 6 maanden geleden gehouden onder 1000 smartphone gebruikers. IOS gebruikers zijn daarnaast ook vele male actiever op allerlei vlakken ten opzichte van Windows Phone of Blackberry gebruikers.

geplaatst op om 11:22 uur

@ cvanekeris en @ Ralph,

Bedankt voor de aanvullingen en het compliment!

@ melvinvdbout,

Zoals ik ook al in bovenstaand artikel aangaf heb ik ook mijn bedenkingen bij dat onderzoek van The Phone House. Maar ik denk dat dat niet zoveel uitmaakt in de context van dit artikel. Ook als die cijfers er 10% naast zitten is nog steeds duidelijk dat het grootste platform nog niet de helft van de markt heeft. En dus is het voor marketeers in de meeste gevallen belangrijk om een app te maken die op 2 of 3 platformen draait. Anders mis je gewoon een hele hoop bereik.

En natuurlijk zijn er demografische verschillen tussen de gebruikers van iOS en die van Windows Phones. Maar ik vermoed dat een hoop strategische marketingplannen een bredere doelgroep gedefinieerd hebben dan 'iPhonegebruikers'. o.i.d.

geplaatst op om 13:01 uur

Hmmm... zeker is het interessant om voor bedrijven eens niet de funky cool apps kant op 1 platform te benaderen maar te kijken naar de praktische problemen om je bereik te vergroten als bedrijf.
Het is echter jammer dat daarbij enkel wordt gekeken naar 1 mogelijkheid : html/css/js terwijl ook een andere net zo viable optie bestaat: Flash (in vorm van AIR).
Door gebruik te maken van Flash kan je met vector bestanden (of gewoon pixel-plaatjes) op meerdere platformen te lanceren wel met 1 druk op de knop! Hoe? Door bij development-proces rekening te houden op welke platformen (Android, iOS, Blackberry, Samsung(/LG in okt) SmartTV, Mac, Windows) en welke afmetingen (mobile, tablet, pc, tv) je wilt bereiken. Adobe is hier al tijdje mee bezig en heeft vooral afgelopen 6 maanden grote sprongen gemaakt waarin populaire games/apps (top 3) in de iTunes Store (evenals in Android Market) gemaakt zijn met Flash/AIR.

Gemiste kans om een goed overzicht te bieden aan bedrijven die zich afvragen wel/niet met apps hun bereik te vergroten. Tevens ook jammer om te zien dat niet meer nadruk word gelegd op de mogelijkheden die met multi-platform aanwezig zijn: je kan hierdoor ook bedrijfsprocessen van thuis, onderweg (mobiel/tablet) en op werk integreren als een "seamless workflow" zonder daarbij 1 device enkel te moeten te gebruiken.

geplaatst op om 07:59 uur

"Bij iOS is dat Objective-C (en via wat omwegen ook andere versies van C), bij Android moet een app in JAVA ontwikkeld worden en bij Windows Phone C# (C Sharp)."

Bovenstaande is niet helemaal correct. Een Android app hoeft niet alleen in JAVA ontwikkeld te worden. Het kan namelijk ook in C of C++ ontwikkeld worden.

Je kan dus code schrijven die zowel op Android als iOS draait. Dan hoef je het dus maar één keer te schrijven. Het gaat hierbij dan wel om code die niks met de GUI doen.

Zie: http://developer.android.com/sdk/ndk/index.html

geplaatst op om 11:55 uur

Naar mijn idee is multiplatform niet de toekomst, maar het heden. GetApped, de organisatie waarvoor ik werk, verkoopt haar multiplatform aan communicatie- en marketingbureaus die hun klantenbase bedienen met apps. Initieel is de aankoop van zo'n platform een forse investering (rond de € 25.000 / 30.000). De uitlevering van apps binnen de bestaande operating systems is vervolgens eenvoudig, erg voordelig en snel.

Het klopt dat je in de leer niet met één klik op de knop alles kunt uitleveren op alle mogelijke devices. Toch is dit binnen het platform van GetApped het uitgangspunt. Met minimale tijdsinvestering is het mogelijk uit te leveren op iOS, Android, BlackBerry en Windows.

geplaatst op om 12:44 uur

Hoi Remi,

Erg leuk om jou mening over cross platform apps te lezen. Wellicht ook leuk om te weten, dat wij bij Service2Media proberen de zogenoemde nadelen van multi platform apps te overkomen. Dit door design patterns/patronen in ons platform vast te leggen voor Android/ iOS / WP7 / BB / Symbian.
Ben je al bekend met het App Lifecycle Platform van Service2Media? Gartner heeft ons vorige jaar in haar Magic Quadrant geplaatst naast PhoneGap & Appcelerator. Wellicht leuk om eens verder te praten!

Gr. Anette

geplaatst op om 13:38 uur

Hoi Remi,

Goed artikel en leuk om te lezen! Terecht dat je een lans breekt voor multi-platform apps. "Nothing beats native" maar vaak is een multi-platform app een betere keuze. Ik onderschrijf van harte de voordelen, waarbij het kostenvoordeel slechts een van de redenen is om binnen het keuzepalet van multi-platform te kiezen voor bijvoorbeeld hybride apps (html-css-JavaScript verpakt met een tool als PhoneGap). Het kostenvoordeel is natuurlijk wel een belangrijk criterium in deze economisch mindere tijden. Een identieke app voor iOS en Android is mogelijk voor onder de € 1.000,- zonder in te leveren op functionaliteit, vormgeving of aanpasbaarheid aan de wensen van de klant. Bijvoorbeeld iOS push notifications en Google cloud messaging - berichten sturen naar alle gebruikers of een gebruikerssegment zelfs als de app niet geopend is - kan ook met multi-platform apps via de door jou genoemde "tool" PhoneGap. Mijn bedrijf Waywayway gebruikt daarvoor de combinatie SenchaTouch en PhoneGap.

Daar tegenover staat - of stond - eigenlijk maar een enkel nadeel en dat is de reactiesnelheid van zo'n hybride app. Met recente smartphones en tablets is dat verschil echter verleden tijd.

Hier boven lees ik ook de stelling dat een multi-platform app zich niet op je toestel bevindt, maar elke keer van het internet moet komen. Dat is indetdaad zo bij jQuery Mobile, maar een Sencha Touch web app, "verpakt" met PhoneGap, staat gewoon op je telefoon of tablet. Dankzij html5. Zo'n app doet het dus ook gewoon als je om wat voor reden dan ook even geen internetverbinding hebt.

Om binnen jouw goed gevonden analogie te blijven: de multi-platform app is en wordt steeds meer een betrouwbare middenklasser die je overal brengt, maar waarmee je ook 130 kan op de afsluitdijk!

geplaatst op om 11:40 uur

Plaats een reactie

Log in zodat je (in het vervolg) nóg sneller kunt reageren

  • Maximaal 5000 karakters. Basis HTML tags zoals <a> zijn toegestaan.

  • Let op: je reactie blijft voor altijd staan. We verwijderen deze dus later niet als je op zoek bent naar een nieuwe werkgever (of schoonmoeder). Reacties die beledigend zijn of zelfpromotioneel daarentegen, verwijderen we maar al te graag. Door te reageren ga je akkoord met onze voorwaarden.