Cikli jetësor i një aplikacioni Android

programimi-udhëzues-bazë-android-2

Kur filloni programimin në një gjuhë si C ++ ose Java, gjëja e parë që mësohet është metoda kryesore, pika që do të thërrasë sistemi operativ kur të fillojmë aplikimin tonë.

Në Android nuk ka ndonjë metodë kryesore si e tillë, por ka disa metoda të aktivitetit tonë që do të thirren nga SSOO kur ato të ndodhin Evente të rëndësishme. Në këtë kapitull ne do të studiojmë në thellësi cilat janë ato ngjarje dhe si funksionon. cikli i plotë i një aktiviteti i Android. Dokumentacioni zyrtar ofron një shpjegim të gjerë të kësaj teme, këtu do të studiojmë elementët më të rëndësishëm së bashku me disa gabime të zakonshme gjatë trajtimit të tyre.

Cikli jetësor i Android ndjek këtë skemë:

cikli i jetës android

Ngjarjet e ciklit jetësor

  1. onCreate (Pako)
    • Përfaqëson momentin kur krijohet aktiviteti. Kjo metodë normalisht do të gjenerohet nga magjistari kur krijoni një aktivitet të ri në Android dhe këtu do të krijojmë gjithçka që do të ketë nevojë për aktivitetin. Nëse më parë i kemi ruajtur të dhënat e aktivitetit në një objekt Bundle, mund t'i përdorim për t'i rigjeneruar ato. Normalisht ne nuk do ta përdorim atë.
  2. onStart ()
    • Aktiviteti do të vazhdojë më tej të jetë në ekran, edhe pse jo domosdoshmërisht të dukshme. Nëse vijmë nga një ndalesë, do të kalojmë më parë onRestart ().
  3. onRestart ()
    • Më parë në onStart () kur vijmë nga një telefonatë në onStop ().
  4. onResume ()
    • Aktiviteti do të fillojë përgjigjuni ndërveprimit të përdoruesit.
  5. onPause ()
    • Aktiviteti do ndaloni përgjigjen ndaj ndërveprimit të përdoruesit.
  6. onStop ()
    • Aktiviteti ka shkuar plotësisht në sfond.
  7. onDestroy ()
    • Aktiviteti do të shkatërrohet dhe burimet tuaja të lëshuara.

Kur të kemi nevojë për të zbatuar një nga këto metoda, ne do ta bëjmë atë duke shtuar aktivitetin tonë me këto profile:

klasa publike MyActivity shtrihet Aktiviteti {boshllëku i mbrojtur onCreate (Paketa e ruajturInstanceState) {super.onCreate (e shpëtuarInstanceState); ...} boshllëk i mbrojtur nëStart () {super.onStart (); ...} boshllëk i mbrojtur onRestart () {super.onRestart (); ...} boshllëk i mbrojtur onResume () {super.onResume (); ...} boshllëk i mbrojtur onPause () {... super.onPause (); } boshllëk i mbrojtur onStop () {... onStop (); } boshllëk i mbrojtur nëDestroy () {... super.onDestroy (); }}

Shtë e rëndësishme të mirëmbahet thirrje e metodës së super klasës në mënyrë që të mos hasni të papritura. Detyrat e secilës ngjarje që janë mbi aktivitetin tonë duhet të mirëmbahen. Kjo thirrje do të shkojë në fillim të ngjarjeve të hyrjes dhe në fund të ngjarjeve të daljes. Në këtë mënyrë ne do të shmangim surprizat, pasi elementët e aktivitetit që na duhen, por që nuk do të jenë nën kontrollin tonë do të krijohen para përdorimit të tyre, dhe do të shkatërrohen më pas.

Ne nuk duhet të shtojmë të gjitha ngjarjet, ato që nuk na duhen do të përdorin zbatimin e paracaktuar. Metodat që ne shpesh do të përdorim - dhe nuk rekomandohet të prekim të tjerët - janë onCreate, onPause dhe onRestart.

Kuptimi i onCreate është i qartë: është vendi ku do të ngarkojmë burimet që na duhen, pamjet dhe çfarëdo tjetër që na nevojitet. Për prodhimin, metoda e vetme në të cilën do të përqendrohemi është nëPause. Arsyeja për të shmangur onStop dhe onDestroy është se ne nuk kemi ndonjë kontroll mbi to. onPause do të ekzekutohet sa herë që aplikacioni del nga plani i parë, ndërsa dy të tjerët do të drejtohen nga sistemi operativ bazuar në nevojat tuaja. Ata nuk mund të ekzekutohen kurrë! Kjo është bërë për të shmangur koston e krijimit të aktivitetit përsëri dhe përsëri nëse kalojmë nga aktiviteti në desktop dhe anasjelltas, dhe sistemi operativ do të lirojë burimet e përdorura vetëm nëse ka nevojë për to, dhe nuk ka pse të marrë pjesë në të gjitha proceset e hapura.

Kjo nënkupton që ne do të supozojmë se aplikacioni do të vdesë pasi të ekzekutohet nëPause, dhe se është i yni shansi i fundit për të ruajtur të dhëna që duhet të ruajmë dhe të ndalojmë shërbimet që po përdorim, të tilla si vendndodhja gjeologjike. Nëse i kemi ndaluar shërbimet, vendi i duhur për t'i rifilluar ato është në Rinisni.

Metodat e tjera nuk do të kemi nevojë të përdorim shumë. Një rast i zakonshëm në të cilin do të na duhet do të jetë kur të integrojmë biblioteka të palëve të treta, të tilla si Facebook ose Flurry. Në këto raste, do të na kërkohet të përputhim metodat e veprimtarisë sonë me kodin tuaj. Për shembull, për të regjistruar një seancë Flurry do të na kërkohet të fillojmë sesionin në metodën onStart.

Disa ide të dobishme

  • Mos harroni se për çfarë shërben secila ngjarje. Ju gjithmonë do të keni nevojë për onCreate, dhe mjaft shpesh do t'ju duhet onPause dhe onResume për të ndaluar dhe rihapur shërbimet më konsumuese.
  • Mos prekni ngjarjet e tjera nëse nuk ju duhet shprehimisht.
  • Mos i beso onStop dhe onDestroy, ata kurrë nuk mund të quhen. Kurseni gjithçka që ju nevojitet nëPause.
  • Shmangni përdorimin e ndryshoreve statike jo përfundimtare. Aplikacioni mund të ngarkohet përsëri kur të ktheheni dhe ata do të ruajnë vlerat që kanë lënë pas. Nëse nuk keni zgjidhje tjetër përveç se t'i përdorni, sigurohuni që të rivendosni vlerat e tyre kur të ktheheni në plan të parë.

Më shumë informacion - Udhëzues themelor për programimin në Android


Ju intereson:
Si të hiqni viruset në Android
Na ndiqni në Google News

Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Blog aktualidad
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.