Androidi rakenduse elutsükkel

põhijuhend-programmeerimine-android-2

Kui alustate programmeerimist sellises keeles nagu C ++ või Java, on esimene asi, mida õpetatakse, peamine meetod, punkt, millele operatsioonisüsteem helistab, kui meie rakendust käivitame.

Androidis pole peamist meetodit kui sellist, kuid on mitmeid meie tegevuse meetodeid, mida SSOO nende esinemisel kutsub olulised sündmused. Selles peatükis uurime põhjalikult, mis need sündmused on ja kuidas need toimivad. tegevuse kogu tsükkel Androidist. Ametlik dokumentatsioon pakub selle teema kohta ulatuslikku selgitust, siin uurime kõige olulisemaid elemente koos mõnede levinumate vigadega nende käsitlemisel.

Androidi elutsükkel järgib seda skeemi:

androidi elutsükkel

Eluringi sündmused

  1. onCreate (komplekt)
    • Esindab hetke, millal tegevus on loodud. Selle meetodi genereerib viisard tavaliselt Androidis uue tegevuse loomisel ja seal loome kõik, mida see tegevus vajab. Kui oleme tegevusandmed varem Bundle'i objekti salvestanud, saame neid kasutada nende taastamiseks. Tavaliselt me ​​seda ei kasuta.
  2. onStart ()
    • Tegevus läheb ekraanil olema, kuigi see pole tingimata nähtav. Kui tuleme peatusest, läbime kõigepealt onRestart ().
  3. onRestart ()
    • Eelmine lehele onStart (), kui tuleme kõnest onStop ().
  4. onResume ()
    • Alustatakse tegevust reageerima suhtlemisele kasutaja.
  5. onPause ()
    • Tegevus saab lõpetage reageerimine kasutaja suhtlemisele.
  6. onStop ()
    • Tegevus on läinud täielikult taust.
  7. onDestroy ()
    • Tegevus see hävitatakse ja teie ressursid on vabastatud.

Kui peame rakendama ühte neist meetoditest, teeme seda oma tegevusele nende profiilidega lisades:

avalik klass MyActivity laiendab aktiivsust {protected void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); ...} kaitstud void onStart () {super.onStart (); ...} kaitstud void onRestart () {super.onRestart (); ...} kaitstud void onResume () {super.onResume (); ...} kaitstud void onPause () {... super.onPause (); } kaitstud void onStop () {... onStop (); } kaitstud tühine onDestroy () {... super.onDestroy (); }}

Oluline on säilitada superklassimeetodi kutse et üllatusi mitte kohata. Iga ürituse ülesanded, mis on meie tegevusest kõrgemal, tuleb säilitada. See kõne läheb sisendsündmuste algusesse ja väljundsündmuste lõppu. Sel moel väldime üllatusi, sest vajaliku tegevuse elemendid, mis ei ole meie kontrolli all, luuakse enne nende kasutamist ja hävitatakse hiljem.

Me ei pea kõiki sündmusi lisama, need, mida me ei vaja, kasutavad vaikerakendust. Meetodid, mida me sageli kasutame - ja teisi pole soovitatav puudutada - on onCreate, onPause ja onRestart.

OnCreate'i tähendus on selge: see on koht, kuhu laadime vajalikud ressursid, vaated ja kõik muu, mida vajame. Väljundi jaoks on ainus meetod, millele keskendume, on onPause. OnStopi ja onDestroy vältimise põhjus on see, et meil pole nende üle mingit kontrolli. onPause töötab alati, kui rakendus tuleb esiplaanilt välja, ülejäänud kahte aga opereerib teie vajadustest lähtuv operatsioonisüsteem. Neid ei pruugi kunagi hukata! Seda tehakse selleks, et vältida tegevuse uuesti ja uuesti loomise kulusid, kui läheme tegevusest töölauale ja vastupidi ning operatsioonisüsteem vabastab kasutatavad ressursid ainult siis, kui seda vaja on, ja see ei pea osalema kõigil avatud protsessid.

See tähendab, et eeldame, et rakendus sureb pärast onPause'i käivitamist ja see on meie oma viimane võimalus andmeid salvestada et peame salvestama ja peatama kasutatavad teenused, näiteks geolokatsioon. Kui oleme teenused peatanud, on nende taaskäivitamiseks sobiv koht on Restart.

Teised meetodid, mida me ei pea eriti kasutama. Tavaline juhtum, kus seda vajame, on siis, kui integreerime kolmandate osapoolte raamatukogud, näiteks Facebook või Flurry. Sellistel juhtudel palutakse meil oma tegevuse meetodid teie koodiga sobitada. Näiteks Flurry seansi registreerimiseks palutakse meil seanss alustada meetodil onStart.

Mõned kasulikud ideed

  • Pidage meeles, milleks iga sündmus on mõeldud. Teil on alati vaja onCreate'i ja sageli on kõige kulukamate teenuste peatamiseks ja taaskäivitamiseks vaja onPause ja onResume.
  • Ärge puudutage teisi sündmusi kui te seda otseselt ei vaja.
  • Ära usalda onStop ja onDestrroy, neid ei pruugita kunagi helistada. Salvestage onPause'is kõik vajalik.
  • Vältige mitte-lõplike staatiliste muutujate kasutamist. Rakendust saab naastes endiselt laadida ja see jätab alles jäänud väärtused. Kui teil pole muud võimalust kui neid kasutada, lähtestage kindlasti esiplaanile naastes nende väärtused.

Rohkem informatsiooni - Androidi programmeerimise põhijuhend


Teid huvitavad:
Viiruste eemaldamine Androidis

Ole esimene kommentaar

Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: ajaveeb Actualidad
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.