Android-sovelluksen elinkaari

perus-opas-ohjelmointi-android-2

Kun aloitat ohjelmoinnin kielellä, kuten C ++ tai Java, ensimmäinen asia, joka opetetaan, on päämenetelmä, kohta, johon käyttöjärjestelmä soittaa, kun aloitamme sovelluksemme.

Androidissa ei ole päämenetelmää sellaisenaan, mutta on olemassa useita toimintamme menetelmiä, joita SSOO kutsuu, kun ne tapahtuvat tärkeät tapahtumat. Tässä luvussa tutkitaan perusteellisesti, mitä nuo tapahtumat ovat ja miten se toimii. toiminnan koko syklin Android. Viralliset asiakirjat tarjoaa kattavan selityksen tästä aiheesta, tässä tutkitaan tärkeimmät elementit sekä joitain yleisiä virheitä niiden käsittelyssä.

Androidin elinkaari noudattaa tätä mallia:

android-elinkaari

Elinkaaren tapahtumat

  1. onCreate (paketti)
    • Edustaa hetkeä, jolloin toiminta luodaan. Ohjattu toiminto luo tavallisesti tämän menetelmän luodessaan uutta toimintaa Androidille, ja siellä luomme kaiken toiminnan tarvitseman. Jos olemme aiemmin tallentaneet aktiviteettidatan Bundle-objektiin, voimme käyttää sitä sen luomiseen. Normaalisti emme käytä sitä.
  2. onStart ()
    • Toiminta jatkuu olla näytöllä, vaikkakaan ei välttämättä näkyvissä. Jos tulemme pysäkiltä, ​​käymme ensin läpi Käynnistä uudelleen ().
  3. onRestart ()
    • Edellinen onStart () -palveluun, kun tulemme kutsusta onStop ().
  4. onResume ()
    • Aktiviteetti alkaa vastata vuorovaikutukseen käyttäjän.
  5. onPause ()
    • Toiminta tulee lopeta vastaaminen käyttäjän vuorovaikutukseen.
  6. onStop ()
    • Toiminta on mennyt kokonaan tausta.
  7. onDestroy ()
    • Toiminta se tuhotaan ja resurssit vapautetaan.

Kun joudumme toteuttamaan jonkin näistä menetelmistä, teemme sen lisäämällä toimintaamme näillä profiileilla:

julkinen luokka MyActivity laajentaa toimintoa {protected void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); ...} suojattu void onStart () {super.onStart (); ...} suojattu void onRestart () {super.onRestart (); ...} suojattu void onResume () {super.onResume (); ...} suojattu void onPause () {... super.onPause (); } suojattu void onStop () {... onStop (); } suojattu void onDestroy () {... super.onDestroy (); }}

On tärkeää ylläpitää superluokan menetelmän kutsu jotta ei kohtaisi yllätyksiä. Jokaisen tapahtumamme tehtävät, jotka ylittävät toimintamme, on säilytettävä. Tämä kutsu menee syöttötapahtumien alkuun ja lähtötapahtumien loppuun. Tällä tavoin vältämme yllätyksiä, koska tarvitsemamme toiminnan osat, jotka eivät ole meidän hallinnassamme, luodaan ennen niiden käyttöä ja tuhotaan jälkikäteen.

Meidän ei tarvitse lisätä kaikkia tapahtumia, ne, joita emme tarvitse, käyttävät oletustoteutusta. Menetelmät, joita usein käytämme - eikä ole suositeltavaa koskettaa muita - ovat onCreate, onPause ja onRestart.

OnCreate-merkitys on selkeä: se on paikka, jonne lataamme tarvitsemamme resurssit, näkemykset ja kaiken muun mitä tarvitsemme. Ainoa menetelmä, johon keskitymme, onPause. Syy välttää onStop ja onDestroy on, että meillä ei ole minkäänlaista kontrollia niistä. onPause toimii aina, kun sovellus tulee ulos etualalta, kun taas kaksi muuta ajaa käyttöjärjestelmä tarpeidesi mukaan. Niitä ei ehkä koskaan teloiteta! Tämä tehdään välttääkseen toiminnan luomisen kustannukset uudestaan ​​ja uudestaan, jos siirrymme toiminnasta työpöydälle ja päinvastoin, ja käyttöjärjestelmä vapauttaa käytetyt resurssit vain, jos se tarvitsee niitä, eikä sen tarvitse osallistua kaikkiin avoimia prosesseja.

Tämä tarkoittaa, että oletamme, että sovellus kuolee onPause-ohjelman suorittamisen jälkeen ja että se on meidän viimeinen mahdollisuus tallentaa tietoja että meidän on tallennettava ja lopetettava käyttämämme palvelut, kuten maantieteellinen sijainti. Jos olemme lopettaneet palvelut, oikea paikka niiden uudelleenkäynnistämiseksi on onRestart.

Muita menetelmiä, joita meidän ei tarvitse käyttää paljon. Tarvitaan yleinen tapaus, kun integroimme kolmansien osapuolten kirjastot, kuten Facebook tai Flurry. Näissä tapauksissa meitä pyydetään sovittamaan toimintatapamme koodisi kanssa. Esimerkiksi Flurry-istunnon rekisteröimiseksi meitä pyydetään aloittamaan istunto onStart-menetelmällä.

Hyödyllisiä ideoita

  • Muista, mitä kukin tapahtuma on tarkoitettu. Tarvitset aina onCreate, ja usein tarvitset onPause ja onResume lopettaaksesi ja käynnistääksesi uudelleen eniten kuluttavat palvelut.
  • Älä koske muihin tapahtumiin jos et tarvitse sitä nimenomaisesti.
  • Älä luota onStop ja onDestroy, heitä ei ehkä koskaan kutsuta. Tallenna kaikki tarvitsemasi onPause-palveluun.
  • Vältä ei-lopullisten staattisten muuttujien käyttöä. Sovelluksen voi silti ladata, kun palaat, ja se säilyttää jälkensä jättämät arvot. Jos sinulla ei ole muuta vaihtoehtoa kuin käyttää niitä, muista palauttaa niiden arvot palatessasi etualalle.

Lisää tietoa - Perusopas ohjelmointiin Androidissa


Olet kiinnostunut:
Virusten poistaminen Androidista
Seuraa meitä Google-uutisissa

Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: Actualidad-blogi
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.