Wat zijn 'staged rollouts'?
Ontwikkelaars kunnen hun applicaties beschikbaar maken per land en per toestel. Het is mogelijk om bepaalde schermgroottes of individuele toestellen uit te sluiten voor een bepaalde applicatie. Tijdens Google I/O 2013 kondigde Google een nieuwe functie aan voor ontwikkelaars en game-uitgevers. Het is namelijk nu mogelijk om updates geleidelijk uit te rollen, een zogenaamde staged rollout. Dit heeft voor ontwikkelaars verschillende voordelen. Nieuwe functies van applicaties kunnen zo eerst door een kleine groep worden uitgeprobeerd. Bij grote problemen kunnen de wijzigingen relatief snel worden teruggedraaid. Het is ook niet altijd mogelijk om zelf alles te testen, bijvoorbeeld hoe de servers zich houden bij gebruik van tien- of zelfs honderdduizenden gebruikers. De applicatie geleidelijk beschikbaar stellen aan meer gebruikers kan dan een uitkomst zijn.
Eén van de bedrijven die voorstander is van deze functie is Facebook. Tot voor kort had Facebook een applicatie die eigenlijk grotendeels een (mobiele) website was. Dit had als voordeel dat het bedrijf heel eenvoudig nieuwe functies uit kon proberen: er was geen update van de applicatie voor nodig en alles kon vanaf de servers van Facebook worden geregeld. Deze webapplicatie bleek echter erg langzaam en Facebook verving de applicatie voor een snellere versie. Nieuwe functies werden getest door gebruikers buiten de Play Store om een installatiebestand te laten installeren. Google stak hier al snel een stokje voor, omdat deze updates niet gescand konden worden door Google.
Facebook is nu één van de bedrijven die gebruik maakt van de zogenaamde staged rollouts en rolt updates geleidelijk uit naar gebruikers. Google zelf maakt ook fanatiek gebruik van deze mogelijkheid, waardoor het voor kan komen dat de buurman al wel die nieuwste Gmail-update op zijn telefoon heeft, maar jij nog niet, ondanks dat jullie dezelfde telefoon hebben.
Waarom zie ik wel 'nieuwe functies', maar is er geen update voor mij?
Waarschijnlijk zal dit in de toekomst veranderen, maar ontwikkelaars kunnen momenteel per taalgebied maar één omschrijving opgeven, ook wat betreft 'nieuwe functies'. Wanneer een ontwikkelaar gebruik maakt van geleidelijke updates kan hij al wel de omschrijving aanpassen. Wanneer jij dan nog niet aan de beurt bent voor de update, zul jij wél de nieuwe omschrijving en eventueel nieuwe screenshots zien, maar zie je in plaats van de vertrouwde 'bijwerken'-knop in de Google Play Store de 'openen'-knop.
Er is nog een andere mogelijkheid waarom een update voor jou niet beschikbaar is. Ontwikkelaars kunnen namelijk verschillende versies van hun applicatie tegelijk in de Google Play Store zetten. Voorwaarde is wel dat de applicaties elkaar niet volledig overlappen wat betreft beschikbaarheid. Een voorbeeld: wanneer je een aparte tablet- en smartphoneversie van een app hebt, kunnen deze onder dezelfde vermelding in de Play Store worden gezet.
Wanneer er verschillende versies van één app onder dezelfde naam in de Play Store staan, kan het zijn dat een nieuwere versie niet beschikbaar is voor jouw Androidapparaat. Het kan zijn dat de nieuwere versie oudere Androidversies of bepaalde schermformaten uitsluit.
Hoe lang duurt het voordat ik ook een update krijg?
Wanneer een ontwikkelaar gebruik maakt van gefaseerde uitrol van updates, ligt het aan de ontwikkelaar wanneer jij de update binnenkrijgt. De ontwikkelaar kan verschillende uitrolpercentages kiezen. Wanneer de ontwikkelaar bijvoorbeeld kiest voor een eerste uitrol voor 50% van de gebruikers, zal de Play Store willekeurig 50% van de gebruikers uitkiezen en bij deze gebruikers aangeven dat er een update voor de app beschikbaar is.
De ontwikkelaar kan zelf kiezen in welk tempo hij de uitrol doorzet. Het is voor de ontwikkelaar niet mogelijk om de instellingen in de Play Store aan te passen totdat de uitrol voltooid is, waardoor hij wel enigszins een prikkel heeft om snel te testen. Ook is het verstandig om de uitrol niet heel erg lang te laten duren in verband met eventuele verwarring onder gebruikers.
Er zijn nog niet heel veel voorbeelden van applicaties die geleidelijk voorzien worden van een update. Google heeft dit gedaan bij bijvoorbeeld de nieuwste Gmail-versie. Daar hebben we gezien dat de uitrol naar alle gebruikers ongeveer een week in beslag nam. Vermoedelijk zal dit ook gelden voor toekomstige updates van Android-applicaties. Google zelf zegt meestal dat de applicatie 'binnen enkele weken' beschikbaar komt voor alle gebruikers
Kan ik niet handmatig updaten?
Jawel, dit is wel mogelijk. Applicaties die via de Google Play Store zijn geïnstalleerd kunnen ook buiten de Play Store om worden geüpdatet. Je hebt hier wel het installatiebestand (APK) van de nieuwste versie van de app voor nodig. Dit moet worden gedeeld door iemand die de update al wel heeft ontvangen.
Het is wel belangrijk om in de gaten te houden dat het installeren van applicaties buiten de Google Play Store om een stuk gevaarlijker is dan het installeren van apps via de Play Store. Wanneer je een geüpdatete applicatie buiten de Play Store om wilt installeren, let er dan op dat er wordt aangegeven dat de applicatie een bestaande app vervangt. Op die manier weet je zeker dat de applicatie de juiste digitale handtekening heeft.
In het verleden gingen we er vanuit dat de juiste digitale handtekening zou betekenen dat de applicatie (bijna) 100% veilig was. Recentelijk bleek een beveiligingsexpert een lek in de handtekeningcontrole van Android gevonden te hebben, waarvan nog niet zeker is of dit gedicht is. Daarom ontraden we het installeren van updates buiten de Play Store om. Wanneer je dit toch doet, zorg dan dat de update uit een betrouwbare bron komt.
Waarom is deze app niet beschikbaar voor mij?
Het niet beschikbaar zijn van een app voor jouw toestel kan verschillende oorzaken hebben. Ontwikkelaars kunnen namelijk toestellen op verschillende criteria uitsluiten. De meest voorkomende reden is dat de applicatie niet beschikbaar is in jouw land.
Ontwikkelaars kunnen ook individuele toestellen uitsluiten. Dit gebeurt regelmatig bij games: wanneer blijkt dat een bepaalde game niet goed werkt op een bepaald toestel, wordt dit toestel (vaak tijdelijk) niet ondersteund. Ontwikkelaars als Gameloft doen het vaak andersom: toestellen die officieel worden ondersteund, worden ingeschakeld, alle anderen uitgesloten.
Verder is het mogelijk om op bepaalde hardwarekenmerken te filteren. Heeft het toestel een groot scherm (is het een tablet), dan wordt de app niet ondersteund, of heeft het scherm van het toestel een te lage resolutie: de app kan niet worden geïnstalleerd. Wat de precieze reden is dat de app niet ondersteund wordt door jouw apparaat wordt niet weergegeven in de Google Play Store, maar ontwikkelaars laten vaak wel weten welke Androidapparaten worden ondersteund in de omschrijving van een app.
Wat zijn bèta- of alfa-tests?
Om nieuwe versies van applicaties te testen worden vaak zogenaamde alfa- en bètatests gebruikt. Een alfa-test bevat vaak veel fouten en wordt over het algemeen in een kleine groep uitgevoerd, ook regelmatig binnen een bedrijf. Een bètatest wordt vaker uitgevoerd in grotere groepen, vaak door (potentiële) klanten. Het verspreiden van een bètatest gebeurde vaak buiten de Play Store om of via een losse applicatie in de Google Play Store. Google wil graag het verspreiden van apps buiten de Google Play Store om verminderen, zodat apps beter gescand kunnen worden op kwaadaardige software. Daarnaast wil het bedrijf het eenvoudiger maken om applicaties te laten testen door gebruikers. Sinds Google I/O 2013 is het daarom mogelijk om applicaties te laten testen via de Google Play Store, zonder dat daarvoor een (misschien verwarrende) tweede applicatie in de Play Store gezet moet worden met de naam 'testversie' of 'beta'.
Er blijft wel wat verwarring. Net als bij staged rollouts is het niet mogelijk om een tweede omschrijving voor een app toe te voegen. Testers kunnen dus in de Play Store niet zien welke functies nieuw zijn. Ontwikkelaars kunnen zelf kiezen wie deelneemt aan een alfa- of bètatest. Ze richten daarom een Google Group of Google+ Community op. Aan deze groepen voegen ze mensen toe die er voor kunnen kiezen om de testversie van een app te installeren.
Hoe kan ik meedoen aan een bètatest via de Google Play Store?
Ontwikkelaars moeten je toelaten tot een bètatest wanneer de testversie van de app niet als losse applicatie in de Play Store gezet wordt. Bij zo'n officiële Play Store-bètatest moet de ontwikkelaar je toelaten tot de Google Group of Google+ Community voor deze test.
Het meedoen met een test is dan erg eenvoudig. De Twitterapplicatie Plume heeft een mooi (open) bètaprogramma dat via de Play Store loopt. Iedereen die lid wordt van deze Google+ Community, krijgt toegang tot de bètatest. Je dient nog wel via een speciale pagina (zie screenshot hieronder) aan te geven dat je daadwerkelijk mee wilt doen aan de test, een link naar die pagina vind je in de Community. Je ziet de nieuwe bètaversie dan als 'gewone' update verschijnen in de Google Play Store.
Niet alle bètatests via de Google Play Store zijn open. Ontwikkelaars geven vaak aan wanneer het mogelijk is om via de Play Store een nieuwe versie van een applicatie te testen.