Co jsou aktivity Androidu a jaký je jejich životní cyklus? - Technika
Přejít na obsah

Co jsou aktivity Androidu a jaký je jejich životní cyklus?

Jedním z hlavních konceptů ve vývoji mobilních aplikací je koncept Activity, které jsou základem aplikace, tentokrát se podíváme, z čeho se skládají a jaký je jejich životní cyklus.

Reklamy


Na oficiální stránce pro vývojáře Androidu najdeme podrobnější vysvětlení toho, co aktivity představují (https://developer.android.com/guide/components/activities/intro-activities) zde uvidíme obecnou informaci o nich a jejich životním cyklu.


Již jsme viděli, že aplikace pro Android se skládá z různých grafických komponent nebo pohledů a navíc mají adresářovou strukturu, která umožňuje grafické rozhraní nezávislé na logice aplikace, obrazovky jsou spravovány pomocí xml souborů, které obsahují s rozvrženími nebo správci obsahu a logikou se pracuje v činnostech, které odpovídají třídě činností, existuje také další koncept nazývaný fragmenty, které žijí uvnitř činností, ale to je něco, čemu se budeme věnovat později.


Třída Activity je jednou z hlavních součástí aplikace. Jsou přesně základem pro vytváření aplikací, protože spravují logiku systému a to, s čím bude uživatel pracovat. Aplikace pro Android začíná instancí aktivity, která má definovaný životní cyklus, aby byla aplikace spuštěna.


Než se ponoříme do životního cyklu, je velmi důležité si ujasnit, že jak funguje mobilní aplikace, liší se od toho, jak fungují ostatní aplikace, mobilní aplikace nemá konkrétní výchozí bod, na rozdíl od desktopové aplikace, která začíná metodou main(). aplikaci lze spustit z kterékoli její obrazovky (to neznamená, že nemůžeme dát příkaz ke spuštění).


Interně, když měníme obrazovky, je provedeno volání mezi aktivitami (nebo jsou fragmenty nahrazeny ve stejné aktivitě) a když měníme mezi aplikacemi stejným způsobem, aplikace je vyvolána voláním své počáteční aktivity.


Aplikace je obvykle složena z několika obrazovek, což se rovná několika aktivitám, které spolu komunikují, i když již bylo zmíněno, že aplikaci lze spustit z libovolné aktivity, aktivita je vždy definována jako hlavní aktivita MainActivity (i když nemusí být nutně první, který se zobrazí) a odtud označte výchozí bod pro navigaci v systému, který volá nové aktivity nebo fragmenty.

Soubor manifestu (AndroidManifest.xml)


V předchozím příspěvku jsme hovořili o souboru manifestu, jedná se o konfigurační soubor, který umožňuje parametrizovat hlavní prvky aplikace, zde naleznete informace jako ID aplikace, název, ikonu, aktivity, které obsahuje, oprávnění, mimo jiné důležité položky.



Když je aktivita vytvořena, androidStudio se automaticky postará o její parametrizaci v souboru AndroidManifest.xml a tam můžete také přidat filtry nebo vlastnosti pro určení dalších akcí aplikace, například na předchozím obrázku vidíte, že MainActivity je hlavní systém činnosti (ten, který je zobrazen jako první) od je k němu přidána s vlastností <action android:name="android.intent.action.MAIN" />

Životní cyklus aktivity.


Aktivita prochází během provádění několika stavy, tyto stavy nastávají prostřednictvím interakce uživatele s aktivitou, například když vstupuje, vystupuje, znovu vstupuje nebo když je zavřena, android nám umožňuje ovládat každý z těchto stavů prostřednictvím řady definovaných metody, které můžeme implementovat pro správu chování, například můžete pozastavit přehrávač videa při změně obrazovky nebo zrušit procesy připojení při ukončení aplikace, na stránce vývojáře Android najdeme detail těchto metod (zde také následující diagram ukazuje, jak to funguje:


Zde je shrnutí každého ze států:


  • onCreate()

    Tato metoda je vytvořena standardně v aktivitě a je aktivována, když začne odkazovat na rozvržení odpovídající grafické části pomocí metody setContentView(), jedná se o první metodu, která se provede.

  • onStart()

    Když se onCreate() zavře, aktivita změní svůj stav z vytvořeno na spuštěno a je prezentována uživateli, zde se pohled a aktivita stanou interaktivní.

  • Ve zkratce()

    Po spuštění aktivity se změní stav onResume(), který zodpovídá za zpracování informací o interakci uživatele, zde je rozpoznáno a zachyceno vše, co uživatel zadá.

  • onPause()

    V případě, že Aktivita ztratí pozornost a je přerušena, je vyvolán stav Pauza, například když uživatel stiskne tlačítko Zpět nebo změní obrazovku, znamená to, že aktivita je stále částečně viditelná, zatímco se aktivita zavírá.

    Z tohoto stavu se můžete znovu vrátit k onResume() nebo onStop()

  • onStop()

    Tento stav začíná, když uživatel již aktivitu nevidí, může to být proto, že aktivita byla smazána, aktivita, která byla zastavena, se znovu aktivuje nebo protože se spouští nová, v tomto případě již zastavená aktivita není pro uživatele viditelná. uživatel. uživatele, odtud můžete volat onRestart() nebo onDestroy()

  • onRestart()

    Do tohoto stavu se systém dostane, když má být zastavená aktivita znovu spuštěna, zde je stav aktivity obnoven od okamžiku, kdy byla zastavena a je provedeno volání onStart().

  • onDestroy()

    Nakonec systém zavolá tuto metodu před odstraněním aktivity, toto je poslední stav, kterým aktivita prochází a je implementována, když musí být zaručeno uzavření nebo uvolnění všech zdrojů aktivity.


Tyto metody lze v projektu implementovat následovně:


Při spuštění aplikace tedy uvidíme chování v logcat.

A je to, s tím vidíme, z čeho se činnosti skládají a jak můžeme řídit životní cyklus, pak můžeme pokračovat v práci na základní aplikaci.

Může vás to také zajímat.




Chcete k tomuto příspěvku něco přidat nebo okomentovat? klidně udělej….A pokud se vám to líbilo... zvu vás ke sdílení Y Přihlaste se k odběru kliknutím na tlačítko „Připojit se k tomuto webu“, abyste slyšeli více podobných příspěvků 😉