Wat zijn Android-activiteiten en wat is hun levenscyclus? - Technologie
Doorgaan naar artikel

Wat zijn Android-activiteiten en wat is hun levenscyclus?

Een van de belangrijkste concepten bij de ontwikkeling van mobiele applicaties is het concept van activiteit, deze vormen de basis van de applicatie. Deze keer zullen we zien waaruit ze bestaan en wat hun levenscyclus is.

Advertenties


Op de officiële Android-ontwikkelaarspagina kunnen we een meer gedetailleerde uitleg vinden van wat de activiteiten vertegenwoordigen (https://developer.android.com/guide/components/activities/intro-activities) hier zullen we een algemeenheid over hen en hun levenscyclus zien.


We hebben al gezien dat een Android-applicatie uit verschillende grafische componenten of weergaven bestaat en bovendien een directorystructuur hebben waardoor de grafische interface onafhankelijk kan zijn van de applicatielogica. De schermen worden beheerd via de XML-bestanden die aan de lay-outs of contentmanagers en aan de logica wordt gewerkt in de activiteiten die overeenkomen met de klasse Activity. Er is ook een ander concept genaamd fragmenten dat binnen de activiteiten leeft, maar dit is iets waar we later op zullen ingaan.


De klasse Activity is een van de hoofdcomponenten van een applicatie. Ze vormen precies de basis voor het bouwen van apps, omdat ze de systeemlogica beheren en waarmee de gebruiker zal communiceren. Een Android-applicatie begint met een exemplaar van een activiteit met een gedefinieerde levenscyclus om de applicatie draaiende te houden.


Voordat we in de levenscyclus duiken, is het erg belangrijk om duidelijk te maken dat de werking van een mobiele applicatie verschilt van de werking van andere applicaties, een mobiele applicatie heeft geen specifiek startpunt, in tegenstelling tot een desktop applicatie die start via een main( )-methode kan een applicatie vanuit elk van de schermen worden gestart (dit betekent niet dat we geen startopdracht kunnen geven).


Als we intern van scherm wisselen, wordt er een aanroep gedaan tussen activiteiten (of fragmenten worden vervangen in dezelfde activiteit) en als we op dezelfde manier tussen applicaties wisselen, wordt de applicatie aangeroepen door de initiële activiteit aan te roepen.


Een applicatie bestaat normaal gesproken uit meerdere schermen, wat gelijk staat aan het hebben van meerdere activiteiten die met elkaar communiceren. Hoewel al is vermeld dat de applicatie vanuit elke activiteit kan worden gestart, wordt een activiteit altijd gedefinieerd als de hoofdactiviteit MainActivity ( hoewel dit niet noodzakelijkerwijs de eerste hoeft te zijn die wordt weergegeven) en markeer van daaruit het startpunt voor het navigeren door het systeem door nieuwe activiteiten of fragmenten op te roepen.

Manifestbestand (AndroidManifest.xml)


In een eerder item hadden we het over het manifestbestand, dit is een configuratiebestand waarmee je de belangrijkste elementen van de applicatie kunt parametreren. Hier vind je informatie zoals de applicatie-ID, de naam, het pictogram, de activiteiten die het bevat, de machtigingen, naast andere belangrijke items.



Wanneer een activiteit wordt aangemaakt, zorgt androidStudio automatisch voor het parametriseren ervan in het bestand AndroidManifest.xml en vervolgens kunt u ook filters of eigenschappen toevoegen om aanvullende acties van de applicatie te bepalen. In de vorige afbeelding kunt u bijvoorbeeld zien dat de MainActivity de hoofdactiviteitensysteem (het eerste getoonde) sinds de wordt er met de eigenschap aan toegevoegd <action android:name="android.intent.action.MAIN" />

Levenscyclus van activiteiten.


Een activiteit doorloopt tijdens de uitvoering verschillende toestanden. Deze toestanden komen voor door de interactie van de gebruiker met de activiteit, bijvoorbeeld wanneer deze binnenkomt, weggaat, weer binnenkomt of wanneer deze wordt gesloten. Met Android kunnen we elk van deze toestanden controleren via een reeks gedefinieerde methoden die we kunnen implementeren om gedrag te beheren, u kunt bijvoorbeeld een videospeler pauzeren wanneer u van scherm verandert of verbindingsprocessen annuleren bij het afsluiten van de applicatie. Op de Android-ontwikkelaarspagina vinden we de details van deze methoden (daar kunnen we ook de onderstaand schema dat laat zien hoe het werkt:


Laten we een samenvatting van elk van de staten bekijken:


  • onCreate()

    Deze methode wordt standaard aangemaakt in de activiteit en wordt geactiveerd wanneer deze begint te verwijzen naar de lay-out die overeenkomt met het grafische gedeelte via de setContentView() -methode. Dit is de eerste methode die wordt uitgevoerd.

  • aanStart()

    Wanneer onCreate() wordt gesloten, verandert de status van de activiteit van gemaakt naar gestart en wordt deze aan de gebruiker gepresenteerd. Dit is waar de weergave en activiteit interactief worden.

  • In het kort()

    Nadat de activiteit is gestart, wordt de status onResume() gewijzigd, die verantwoordelijk is voor het verwerken van informatie over gebruikersinteractie. Hier wordt alles wat de gebruiker invoert herkend en vastgelegd.

  • opPauze()

    Als de activiteit de focus verliest en wordt onderbroken, wordt de pauzestatus opgeroepen. Wanneer de gebruiker bijvoorbeeld op de terugknop drukt of van scherm verandert, betekent dit dat de activiteit nog gedeeltelijk zichtbaar is terwijl de activiteit wordt afgesloten.

    Vanuit deze status kunt u weer terugkeren naar onResume() of onStop()

  • aanStop()

    Deze status begint wanneer de activiteit niet langer zichtbaar is voor de gebruiker. Dit kan zijn omdat de activiteit is verwijderd, een gestopte activiteit opnieuw wordt geactiveerd of omdat er een nieuwe wordt gestart. In dit geval is de gestopte activiteit niet langer zichtbaar voor de gebruiker. de gebruiker. de gebruiker, vanaf hier kunt u onRestart() of onDestroy() aanroepen

  • bijHerstart()

    Het systeem komt in deze status terecht wanneer een gestopte activiteit opnieuw zal worden gestart, hier wordt de status van de activiteit hersteld vanaf het moment dat deze werd gestopt en de aanroep van onStart() werd gedaan.

  • opVernietigen()

    Ten slotte roept het systeem deze methode aan voordat de activiteit wordt verwijderd. Dit is de laatste toestand die de activiteit doormaakt en wordt geïmplementeerd wanneer de sluiting of vrijgave van alle bronnen van een activiteit moet worden gegarandeerd.


Deze methoden kunnen als volgt in het project worden geïmplementeerd:


Dus bij het starten van de applicatie zullen we het gedrag in logcat zien.

En dat is alles, hiermee kijken we waaruit de werkzaamheden bestaan en hoe we de levenscyclus kunnen beheersen, waarna we verder kunnen werken aan de basistoepassing.

Het kan u ook interesseren.




Is er iets dat u wilt toevoegen of opmerken over dit bericht? doe gerust….En als je het leuk vond... nodig ik je uit om het te delen Y Meld u aan door de knop 'Word lid van deze site' te gebruiken om meer van dit soort berichten te zien 😉