Zelf mobiele apps bouwen (deel 2)

Door: Gertjan Groen | 12 juli 2021 09:12

How To

Voordat je kunt beginnen met mobiele apps bouwen heb je een ontwikkelomgeving nodig. Bij Android is dat Android Studio, dat alles bevat wat je nodig hebt. Je installeert Android Studio, en we laten zien hoe je extra onderdelen kunt installeren en hoe je je installatie up-to-date houdt. Daarna gaan we de ontwikkelomgeving verkennen.

Deel 1 gemist? Lees hier het artikel terug.

Android Studio werd aangekondigd tijdens Android I/O 2013 en de eerste versie verscheen eind 2014. Tot op dat moment werd vooral Eclipse met een plug-in gebruikt om Android-apps te bouwen. De basis voor Android Studio is de ontwikkelomgeving IntelliJ IDEA van JetBrains. Alles wat je nodig hebt om een app te ontwikkelen is al ingebouwd. Denk aan editors voor het schrijven van je code, een debugger voor het opsporen van fouten, tools om de gebruikersinterface te ontwerpen en mogelijkheden om je programma te testen in een emulator of op je eigen toestel. Bovendien is de software helemaal gratis.

Android Studio is gebaseerd op IntelliJ IDEA van JetBrains.

Welke versie?

Google heeft met het besturingssysteem Android de afgelopen jaren grote stappen gezet. De laatste versie is Android 11 en daar kun je in Android Studio uiteraard mee gaan werken. Ook de ontwikkelomgeving zelf is steeds beter en completer geworden. In mei 2020 kwam Android Studio 4.0 uit, een flinke update met enkele interessante toevoegingen. Zo maak je met de Motion Editor eenvoudiger bewegende delen voor je gebruikersinterface. En met Layout Validation zie je snel hoe een app eruitziet bij verschillende schermgroottes en -verhoudingen. In oktober 2020 volgde versie 4.1 met onder andere een handige Database Inspector, waarmee je de inhoud van je database bekijkt en gegevens uit je database selecteert.

Android Studio heeft de laatste jaren veel veranderingen ondergaan.

Welke versie moet je gebruiken?

Bij het maken van deze cursus hebben we Android Studio 4.1 onder Windows 10 (64 bit) gebruikt. We raden je aan om altijd de laatste versie van deze software te installeren, ook als die wat nieuwer is dan onze versie. Als er zogenoemde breaking changes zijn (veranderingen waardoor bepaalde functies niet meer werken), zullen we dat vermelden.

Systeemeisen

Android Studio ondersteunt behalve Windows 10 (32 of 64 bit) ook eerdere versies van Windows evenals macOS 10.10 (codenaam Yosemite) of hoger, Linux en Chrome OS. De systeemeisen kun je hier nalezen. Ze lopen niet ver uiteen voor deze besturingssystemen. Grofweg heb je nodig:

- 4 GB geheugen, maar liever 8 GB of meer;

- Ongeveer 4 GB schijfruimte of meer;

- Een schermresolutie van 1280 × 800 pixels of hoger.

Android Studio is een stevig pakket. Het heeft zeker nut om in een snelle processor (Intel of AMD) met meerdere rekenkernen te investeren, alleen al om het tussentijds compileren te versnellen. Bespaar ook niet op het werkgeheugen. Werk je aan een wat groter project of heb je meerdere programma’s of tools openstaan, dan is 16 of zelfs 32 GB geen overbodige luxe. Bedenk dat de emulator al zo’n 768 MB aan werkgeheugen vraagt. Een ssd is in onze ogen eveneens vrij essentieel: apps bevatten vaak grote aantallen kleine bestanden en een ssd is dan sneller. Een ouderwetse harde schijf doet er door de hogere toegangstijd aanzienlijk langer over om zulke bestanden te laden. Een groot scherm is ook handig of een opstelling met meerdere schermen. Vensters van Android Studio kun je neerzetten waar je ze handig vindt.

De systeemeisen lopen voor de verschillende besturingssystemen weinig uiteen.

Installatie software en drivers

Android Studio

Het pakket Android Studio geeft je alles wat nodig is om een app voor Android te ontwikkelen. Het is tegenwoordig niet meer nodig om de SDK (Software Development Kit) voor Android en de JDK (Java Development Kit) voor Java apart te installeren. Om de software te downloaden, ga je hier naartoe. Deze downloadlink geeft de laatste stabiele versie. Onder het tabblad Preview zijn ook recentere testversies beschikbaar, zoals de zogenoemde Canary-build. Deze bevatten de laatste vernieuwingen, maar zijn minder goed getest. Die zullen alleen in specifieke situaties de voorkeur krijgen.

De meeste gebruikers zullen de downloadlink naar de laatste stabiele versie gebruiken.

Installatie

De installatie gaat vrij rechttoe rechtaan. De twee componenten (Android Studio en Android Virtual Device) worden beide standaard geïnstalleerd. Met Android Virtual Device wordt een virtuele toestelconfiguratie bedoeld voor de emulator (zie kader ‘Virtuele toestellen en de emulator’). Heb je de installatie van Android Studio afgerond en start je de software voor het eerst, dan kun je eventueel de instellingen van een eerdere installatie importeren. Hierna volgt een wizard voor een initiële configuratie waarmee je tevens aanvullende componenten kunt installeren.

De installatie van Android Studio is eenvoudig.

Virtuele toestellen en de emulator

De emulator bij Android Studio is een hulpmiddel om apps binnen een venster op je eigen pc te draaien. Zo kun je apps die je ontwikkelt eenvoudig uitproberen. Je kunt meerdere virtuele toestelconfiguraties maken met steeds andere hardware, zoals een afwijkende processor, geheugencapaciteit of schermresolutie. Op die manier zie je snel hoe jouw app (bij benadering) op andere toestellen werkt.

Standaard is voor de emulator een virtueel toestel op basis van de Google Pixel 3a gemaakt.

Configuratiewizard

Via de configuratiewizard richt je de ontwikkelomgeving verder in en installeer je extra componenten die je straks nodig hebt. Om de wizard te doorlopen, kies je steeds Next. Als type installatie kies je tussen Standard en Custom. We geven de voorkeur aan die laatste optie zodat je volledige controle hebt over wat er wordt geïnstalleerd. Hierna kun je aangeven welke JDK (Java Development Kit) moet worden gebruikt. Accepteer de standaardlocatie.

Vervolgens kies je tussen een licht of donker thema, dat is persoonlijk. Een meerderheid van de programmeurs prefereert een donker thema omdat het minder vermoeiend zou zijn voor de ogen, maar de meningen lopen uiteen. Al deze keuzes kun je op een later moment wijzigen. Daarna kies je welke extra componenten moeten worden geïnstalleerd.

In de wizard kun je onder meer kiezen tussen een licht of donker thema.

Extra componenten

Bij de eerste optie Android SDK raden we aan om de map bij Android SDK Location te veranderen naar een makkelijker te vinden map. Onder Windows is dat bijvoorbeeld C:\Android\sdk. Belangrijk is dat je geen spaties in dit pad hebt. Verder worden de platformbibliotheken voor de laatst beschikbare versie van Android geïnstalleerd – op het moment van schrijven API 30 ofwel Android 11.0 (R).

De emulator maakt gebruik van een virtuele machine en de prestaties daarvan kun je dankzij hardwareversnelling flink verbeteren. Daarom raden we aan de voorgestelde zogenoemde hypervisor te installeren. Voor processors van Intel is dat HAXM (Hardware Accelerated Execution Manager) en voor AMD de Android Emulator Hypervisor Driver for AMD Processors. Voor deze tools accepteer je de standaardinstellingen, zoals de geheugentoewijzing. Ten slotte zie je een overzicht van alle instellingen en sluit je de configuratie af met Finish. Hierna worden alle gekozen onderdelen gedownload en geïnstalleerd, en dat duurt wel even.

Installeer de voorgestelde hypervisor voor betere prestaties van je emulator.

Virtualisatie activeren in het BIOS

Voor het werken met virtuele machines en voor het versnellen van de emulator middels een hypervisor is een speciale BIOS-instelling nodig. Het BIOS bereik je door tijdens het bootproces op de juiste toets (veelal F2 of Del) te drukken. De optie waar je naar moet zoeken heet VT-x (Intel), SVM (AMD) of gewoon Virtualization Technology. Meestal vind je deze optie(s) onder de geavanceerde processorinstellingen.

SDK Manager

Als je Android Studio hebt opgestart, kun je in de openingsdialoog via Configure / SDK Manager handmatig de SDK Manager openen om extra onderdelen te installeren. De twee voornaamste tabbladen binnen dit hulpprogramma zijn SDK Platforms met alle platformbibliotheken en SDK Tools met extra software en drivers. Om meer details te zien voor softwareonderdelen zet je een vinkje bij Show Package Details.

Onder SDK Platforms valt direct op hoe iedere platformversie een bepaald API-level heeft. Als je een app ontwikkelt, geef je aan welk API-level minimaal vereist is om die app te gebruiken. Een hoger API-level zorgt dat je meer nieuwe functies van Android kunt benutten, maar je sluit ook een gebruikersgroep met oudere versies van Android uit.

Overigens is het in principe niet nodig om eerdere versies van platformbibliotheken te installeren. Met een nieuwere platformbibliotheek kun je ook gewoon een lager API-level als vereiste opgeven. Onder het tabje SDK Tools kun je extra’s installeren. Enkele hebben we al besproken. Als er extra onderdelen in latere delen van deze cursus nodig zijn, verwijzen we naar dit onderdeel van de SDK Manager.

Via de SDK Manager kun je onder andere platformbibliotheken installeren.

Updates installeren

Via Configure / Check for Updates in de openingsdialoog van Android Studio controleer je of er een nieuwe versie van de ontwikkelomgeving beschikbaar is. In dat geval werk je de software snel en eenvoudig bij via een patch. Daarnaast laat ook de SDK Manager per onderdeel zien als er updates zijn. We raden je aan steeds alles bij te werken en regelmatig te controleren op updates. Dat laatste gebeurt overigens automatisch. Zeker voor Android Studio is het verstandig om vooraf de ‘release notes’ te lezen. Er kunnen zogenoemde breaking changes zijn (veranderingen waardoor bepaalde functies niet meer werken), maar natuurlijk ook interessante nieuwe functies die je helpen bij het ontwikkelen. Een enkele keer kunnen wat aanpassingen aan je app nodig zijn om compatibel te blijven.

Ontwikkelomgeving verkennen

Nieuw project

We gaan Android Studio verkennen aan de hand van een nieuw project. Daarvoor kies je in het openingsscherm de optie Create New Project. Je kunt nu uit een van de sjablonen (templates) kiezen waarin een zogenoemde activity is gemaakt. Een activity kun je zien als een scherm van je app waarin de gebruiker iets kan doen, waarbij je minimaal één activity hebt als startpunt voor je app. De sjablonen bestaan er voor verschillende doeleinden. We kiezen hier voor Empty Activity, wat de eenvoudigste optie is om mee te beginnen. Klik dan op Next.

Bij het maken van een project kun je een van de sjablonen kiezen.

Configuratie

In het volgende scherm kies je een configuratie. We maken een eenvoudige app genaamd Hallo Wereld. Achter Name vul je de naam voor de app in. De Package name moet een unieke naam zijn voor jouw app. Als je in de Google Play Store de pagina voor een app opent, zie je deze naam reeds in de url. In de voorgestelde naam com.example.hallowereld herken je de omgekeerde domeinnotatie. Als je zelf een domeinnaam hebt, kun je die in deze plaats gebruiken, zodat er bijvoorbeeld nl.domein.hallowereld staat. Dat raden we aan als je de app gaat verspreiden via Google Play, want het geeft je de zekerheid dat de naam uniek is. Omdat deze app alleen voor testdoeleinden dient, bedenk je zelf iets of je accepteert het voorstel. Achter Save location kies je de map waar de bestanden voor je app moeten worden opgeslagen. Let op dat er geen spaties in mogen staan. Onder Language heb je de keuze tussen Kotlin en Java. We kiezen Kotlin omdat het tegenwoordig de aanbevolen taal is (zie kader ‘Programmeertalen Kotlin en Java’).

In de eerste stap configureer je de app voor je project.

Programmeertalen Kotlin en Java

Een relatief grote verandering binnen Android Studio de laatste jaren is de stap naar Kotlin als de aanbevolen programmeertaal boven Java. Kotlin is gemaakt door JetBrains, dat ook verantwoordelijk is voor de software achter Android Studio. We werken in deze cursus overwegend met Kotlin, omdat het de beste keuze is als je nu met een app begint. Bovendien zijn er veel overeenkomsten met Java. Heb je al een bestaande app of veel ervaring met Java? Dan kun je daarmee blijven werken, ook deze programmeertaal wordt nog gewoon ondersteund.

Kotlin is inmiddels de officiële programmeertaal voor Android.

Minimale Android-versie

Achter Minimum SDK kies je de oudste versie van Android die de app moet ondersteunen. Deze keuze kun je op meerdere manieren benaderen. Kies je een oudere versie, dan kan de app op meer toestellen worden geïnstalleerd. Maar het kost je ook meer tijd om je app compatibel te maken met al die oudere toestellen. Bovendien kun je bepaalde functies van nieuwere versies van Android niet benutten. Je zult dus een balans moeten zoeken en daarbij ook kijken naar de doelgroep voor je app.

De optie Help me choose kan je hierbij helpen. Het geeft een overzicht van alle versies van Android met het bijbehorende API-level. Als je op een bepaalde versie klikt, zie je welke functies daaraan zijn toegevoegd. In deze cursus kiezen we tenzij anders aangegeven API-level 23 ofwel Android 6.0 (codenaam Marshmallow). Dat lijkt hoog, maar het valt mee als je bedenkt dat het besturingssysteem inmiddels ook al ruim vijf jaar oud is. Als het dan toch nog nodig blijkt om oudere toestellen te ondersteunen, kun je de app daar altijd nog op aanpassen. Als je klaar bent met de configuratie, klik je op Finish.

De helpfunctie laat zien welke functies bij welk API-level werden geïntroduceerd.

Minimale SDK-versie op Twitter

Een aardig detail is dat via het Twitter-account www.twitter.com/minsdkversion steeds een minimale SDK-versie voor de ‘praktische, rationele’ ontwikkelaar wordt geadviseerd. Hoewel het verder niet is onderbouwd, wordt het aangegeven API-level als een zinvol advies beschouwd en door veel ontwikkelaars daadwerkelijk toegepast.

Via een account op Twitter wordt een minimale SDK-versie geadviseerd.

Gebruikersinterface

In Android Studio zie je aan de linkerkant het projectvenster genaamd Project. Het bevat alle ontwikkelbestanden voor je app. Zie het als een soort bestandsbeheerder. Bij de standaardweergave Android wordt echter niet de indeling van bestanden en mappen op schijf gevolgd. Wat je ziet is een vereenvoudigde weergave met de meest revelante bestanden. We werken in onze cursus voornamelijk in deze weergave.

Wijzig je de weergave aan de bovenkant van het venster naar Project, dan komen ook andere details naar voren die je soms wilt zien. En dan wordt wel overwegend de indeling van bestanden en mappen op de schijf gevolgd. Naast het projectvenster heeft Android Studio nog veel meer vensters met nuttige tools. Deze kun je zichtbaar maken via View / Tool Windows. Een andere, snellere manier om vensters te openen of te sluiten is door je muis linksonder boven het icoontje met de twee vierkanten te houden. Verder kun je op een van de tabbladen klikken die je rondom het scherm van Android Studio ziet. De indeling kun je sterk naar je hand zetten, maar in deze cursus gebruiken we de standaardinstellingen.

De gebruikersinterface van Android Studio met links het geopende projectvenster.

Menu’s en instellingen

Blader je door de menu’s, dan zijn de vele opties in het begin vermoedelijk wat overweldigend. Maar wees gerust: je hebt zeker in het begin maar een klein deel van al die functies nodig. En die komen gaandeweg aan bod, op het moment dat we ze nodig hebben. Datzelfde geldt voor het uitgebreide instellingenmenu onder File / Settings. Je kunt tot in detail alle instellingen van Android Studio aanpassen.

Wat je vooraf al naar smaak aan zou kunnen passen, is het thema onder Appearance & Behavior / Appearance. Ook het lettertype en de tekstgrootte voor de editor kun je onder Editor / Font naar smaak aanpassen. Bij de cursus gaan we ook wat deze instellingen betreft uit van de standaardinstellingen, maar geven we tips voor aangepaste instellingen die het leven (als Android-ontwikkelaar) makkelijker kunnen maken.

Android Studio kun je tot in detail geheel naar smaak instellen.

0 Reactie(s) op: Zelf mobiele apps bouwen (deel 2)

  • Om te reageren moet je ingelogd zijn. Nog geen account? Registreer je dan en praat mee!
  • Er zijn nog geen reacties op dit artikel.

Wanneer je een reactie plaatst ga je akoord
met onze voorwaarden voor reacties.