Čo sú aktivity Androidu a aký je ich životný cyklus? - Technológia
Preskočiť na obsah

Čo sú aktivity Androidu a aký je ich životný cyklus?

Jedným z hlavných konceptov pri vývoji mobilných aplikácií je koncept Activity, ktorý je základom aplikácie, tentokrát sa pozrieme z čoho pozostávajú a aký je ich životný cyklus.

Reklamy


Na oficiálnej stránke pre vývojárov Androidu nájdeme podrobnejšie vysvetlenie toho, čo aktivity predstavujú (https://developer.android.com/guide/components/activities/intro-activities) tu uvidíme všeobecnú informáciu o nich a ich životnom cykle.


Už sme videli, že aplikácia pre Android sa skladá z rôznych grafických komponentov alebo zobrazení a okrem toho majú adresárovú štruktúru, ktorá umožňuje grafickému rozhraniu byť nezávislé od logiky aplikácie, obrazovky sa spravujú cez xml súbory, ktoré obsahujú s rozloženiami alebo správcami obsahu a logikou sa pracuje v Aktivity, ktoré zodpovedajú triede Aktivity, existuje aj ďalší koncept nazývaný fragmenty, ktoré žijú vo vnútri aktivít, ale tým sa budeme zaoberať neskôr.


Trieda aktivity je jednou z hlavných súčastí aplikácie. Sú presne základom pre vytváranie aplikácií, pretože spravujú systémovú logiku a to, s čím bude používateľ interagovať. Aplikácia pre Android začína inštanciou aktivity, ktorá má definovaný životný cyklus na udržanie chodu aplikácie.


Pred ponorením sa do životného cyklu je veľmi dôležité ujasniť si, že fungovanie mobilnej aplikácie sa líši od fungovania iných aplikácií, mobilná aplikácia nemá špecifický štartovací bod, na rozdiel od desktopovej aplikácie, ktorá začína metódou main(), aplikáciu je možné spustiť z ktorejkoľvek obrazovky (to neznamená, že nemôžeme zadať príkaz na spustenie).


Interne, keď zmeníme obrazovky, vykoná sa volanie medzi aktivitami (alebo sa fragmenty nahradia v rovnakej aktivite) a keď rovnakým spôsobom prejdeme medzi aplikáciami, aplikácia sa vyvolá volaním svojej počiatočnej aktivity.


Aplikácia je zvyčajne zložená z niekoľkých obrazoviek, čo je ekvivalentné mať niekoľko aktivít, ktoré spolu komunikujú, aj keď už bolo spomenuté, že aplikáciu je možné spustiť z akejkoľvek aktivity, aktivita je vždy definovaná ako hlavná aktivita MainActivity (aj keď nemusí byť nevyhnutne prvý, ktorý sa zobrazí) a odtiaľ označte počiatočný bod pre navigáciu v systéme, ktorý vyvolá nové aktivity alebo fragmenty.

Súbor manifestu (AndroidManifest.xml)


V predchádzajúcom položke sme hovorili o súbore manifestu, ide o konfiguračný súbor, ktorý vám umožňuje parametrizovať hlavné prvky aplikácie, tu nájdete informácie ako ID aplikácie, názov, ikona, aktivity, ktoré obsahuje, povolenia, okrem iných dôležitých položiek.



Keď je aktivita vytvorená, androidStudio sa automaticky postará o jej parametrizáciu v súbore AndroidManifest.xml a tam môžete tiež pridať filtre alebo vlastnosti na určenie ďalších akcií aplikácie, napríklad na predchádzajúcom obrázku môžete vidieť, že MainActivity je hlavný systém činnosti (ten, ktorý je zobrazený ako prvý) od r sa k nemu pridáva s vlastnosťou <action android:name="android.intent.action.MAIN" />

Životný cyklus aktivity.


Aktivita počas vykonávania prechádza niekoľkými stavmi, tieto stavy nastávajú interakciou používateľa s aktivitou, napríklad keď vstúpi, vystúpi, znova vstúpi alebo keď sa zatvorí, android nám umožňuje ovládať každý z týchto stavov prostredníctvom série definovaných metódy, ktoré môžeme implementovať na správu správania, napríklad môžete pozastaviť prehrávač videa pri zmene obrazovky alebo zrušiť procesy pripojenia pri ukončení aplikácie, na stránke vývojára systému Android nájdeme podrobnosti o týchto metódach (tu tiež môžeme nájsť nasledujúci diagram ukazuje, ako to funguje:


Tu je súhrn každého zo štátov:


  • onCreate()

    Táto metóda je štandardne vytvorená v aktivite a aktivuje sa, keď začne odkazovať na rozloženie zodpovedajúce grafickej časti prostredníctvom metódy setContentView(), toto je prvá metóda, ktorá sa vykoná.

  • onStart()

    Keď sa onCreate() zatvorí, aktivita zmení svoj stav z vytvoreného na spustený a zobrazí sa používateľovi, v tomto prípade sa zobrazenie a aktivita stanú interaktívnymi.

  • V skratke()

    Po spustení aktivity sa zmení stav onResume(), ktorý je zodpovedný za spracovanie informácií o interakcii používateľa, tu sa rozpozná a zachytí všetko, čo používateľ zadá.

  • onPause()

    V prípade, že Aktivita stratí zameranie a je prerušená, je vyvolaný stav Pauza, napríklad keď používateľ stlačí tlačidlo späť alebo zmení obrazovku, znamená to, že aktivita je stále čiastočne viditeľná, kým sa aktivita zatvára.

    Z tohto stavu sa môžete znova vrátiť k onResume() alebo onStop()

  • onStop()

    Tento stav sa spustí, keď už aktivita nie je viditeľná pre používateľa, môže to byť preto, že aktivita bola vymazaná, jedna, ktorá bola zastavená, sa reaktivuje alebo preto, že sa začína nová, v tomto prípade už zastavená aktivita nie je pre používateľa viditeľná. užívateľ. používateľa, odtiaľto môžete zavolať onRestart() alebo onDestroy()

  • onRestart()

    Do tohto stavu sa systém dostane, keď sa má zastavená aktivita znova spustiť, tu sa stav aktivity obnoví od momentu jej zastavenia a vykoná sa volanie onStart().

  • onDestroy()

    Nakoniec systém zavolá túto metódu pred vymazaním aktivity, toto je posledný stav, ktorým aktivita prechádza a je implementovaná, keď musí byť zaručené zatvorenie alebo uvoľnenie všetkých zdrojov aktivity.


Tieto metódy možno v projekte implementovať nasledovne:


Takže pri spustení aplikácie uvidíme správanie v logcat.

A to je všetko, vďaka tomu vidíme, z čoho činnosti pozostávajú a ako môžeme kontrolovať životný cyklus, potom môžeme pokračovať v práci na základnej aplikácii.

Môže vás to tiež zaujímať.




Je niečo, čo by ste chceli pridať alebo komentovať k tomuto záznamu? pokojne urob….A ak sa vám to páčilo... pozývam vás na zdieľanie Y Prihláste sa na odber kliknutím na tlačidlo „Pripojiť sa k tejto stránke“ a vypočujte si viac podobných príspevkov 😉