Cosa sono le attività Android e qual è il loro ciclo di vita? - Tecnologia
Vai al contenuto

Cosa sono le attività Android e qual è il loro ciclo di vita?

Annunci

Uno dei concetti principali nello sviluppo di applicazioni mobili è il concetto di Attività, essendo questi alla base dell'applicazione, questa volta vedremo in cosa consistono e qual è il loro ciclo di vita.


Nella pagina ufficiale degli sviluppatori Android possiamo trovare una spiegazione più dettagliata di cosa rappresentano le attività (https://developer.android.com/guide/components/activities/intro-activities) qui vedremo una generalità su di loro e sul loro ciclo di vita.


Abbiamo già visto che un'applicazione Android è composta da diverse componenti grafiche o viste e, inoltre, hanno una struttura di directory che permette all'interfaccia grafica di essere indipendente dalla logica dell'applicazione, le schermate sono gestite tramite i file xml che contengono i layout o i content manager e la logica sono lavorati in Activities che corrispondono alla classe Activity, c'è anche un altro concetto chiamato frammenti che vive all'interno delle attività, ma questo è qualcosa che tratteremo più avanti.


La classe Activity è uno dei componenti principali di un'applicazione. Sono proprio la base per la creazione di app, in quanto gestiscono la logica del sistema e ciò con cui l'utente interagirà. Un'applicazione Android inizia con un'istanza di un'attività che ha un ciclo di vita definito per mantenere l'applicazione in esecuzione.


Prima di addentrarci nel ciclo di vita è molto importante chiarire che il funzionamento di un'app mobile differisce da come funzionano altre app, un'app mobile non ha un punto di partenza specifico, a differenza di un'app desktop che si avvia tramite un metodo main(), un'applicazione può essere avviata da una qualsiasi delle sue schermate (questo non significa che non possiamo dare un ordine di avvio).


Internamente, quando cambiamo schermata, ciò che viene fatto è una chiamata tra attività (o i frammenti vengono sostituiti nella stessa attività) e quando passiamo da un'applicazione allo stesso modo, l'applicazione viene richiamata chiamando la sua attività iniziale.


Un'applicazione è solitamente composta da più schermate, il che equivale ad avere più attività che comunicano tra loro, sebbene sia già stato detto che l'applicazione può essere avviata da qualsiasi attività, un'attività è sempre definita come l'attività principale MainActivity (sebbene non deve necessariamente essere il primo ad essere visualizzato) e da lì segnare il punto di partenza per la navigazione nel sistema chiamando nuove attività o frammenti.

File manifest (AndroidManifest.xml)


In una voce precedente abbiamo parlato del file manifest, questo è un file di configurazione che consente di parametrizzare gli elementi principali dell'applicazione, qui troverai informazioni come l'ID dell'applicazione, il nome, l'icona, le attività che contiene, i permessi , tra gli altri elementi importanti.



Quando viene creata un'attività, androidStudio si occupa automaticamente di parametrizzarla nel file AndroidManifest.xml e lì puoi anche aggiungere filtri o proprietà per determinare azioni aggiuntive dell'applicazione, ad esempio nell'immagine precedente puoi vedere che MainActivity è il sistema di attività principale (quello mostrato per primo) poiché il viene aggiunto ad esso con la proprietà

Ciclo di vita dell'attività.


Un'attività attraversa diversi stati durante la sua esecuzione, questi stati si verificano attraverso l'interazione dell'utente con l'attività, ad esempio quando entra, esce, rientra o quando viene chiusa, Android ci consente di controllare ciascuno di questi stati attraverso una serie di stati definiti metodi che possiamo implementare per gestire il comportamento, ad esempio, puoi mettere in pausa un video player quando cambi schermo o annullare i processi di connessione quando esci dall'applicazione, nella pagina degli sviluppatori Android troviamo il dettaglio di questi metodi (lì possiamo anche trovare il seguente diagramma che ne mostra il funzionamento:


Ecco un riepilogo di ciascuno degli stati:


  • suCrea()

    Questo metodo viene creato di default nell'attività e viene attivato quando inizia a referenziare il layout corrispondente alla parte grafica tramite il metodo setContentView(), questo è il primo metodo che viene eseguito.

  • all'avvio()

    Quando onCreate() si chiude, l'attività cambia il suo stato da creata ad avviata e viene presentata all'utente, qui è dove la vista e l'attività diventano interattive.

  • In breve()

    Dopo aver avviato l'attività, viene modificato lo stato onResume(), che è responsabile dell'elaborazione delle informazioni sull'interazione dell'utente, qui tutto ciò che l'utente inserisce viene riconosciuto e catturato.

  • in pausa()

    Nel caso in cui l'attività perda il focus e venga interrotta, viene chiamato lo stato Pausa, ad esempio, quando l'utente preme il pulsante indietro o cambia schermata, significa che l'attività è ancora parzialmente visibile mentre l'attività viene chiusa.

    Da questo stato puoi tornare di nuovo a onResume() o onStop()

  • suStop()

    Questo stato inizia quando l'attività non è più visibile all'utente, può essere perché l'attività è stata cancellata, una che era stata interrotta è in fase di riattivazione o perché ne sta iniziando una nuova, in questo caso l'attività interrotta non è più visibile all'utente utente. l'utente, da qui puoi chiamare onRestart() o onDestroy()

  • al riavvio()

    Il sistema entra in questo stato quando un'attività interrotta sta per essere riavviata, qui lo stato dell'attività viene ripristinato dal momento in cui è stato interrotto e viene effettuata la chiamata a onStart().

  • onDestroy()

    Infine, il sistema chiama questo metodo prima di eliminare l'attività, questo è l'ultimo stato attraversato dall'attività e viene implementato quando deve essere garantita la chiusura o il rilascio di tutte le risorse di un'attività.


Questi metodi possono essere implementati nel progetto come segue:


Quindi all'avvio dell'applicazione vedremo il comportamento in logcat.

Ed è tutto, con ciò vediamo in cosa consistono le attività e come possiamo controllare il ciclo di vita, quindi possiamo continuare a lavorare sull'applicazione di base.

Potrebbe anche interessarti.




C'è qualcosa che vuoi aggiungere o commentare su questa voce? sentiti libero di fare....E se ti è piaciuto... ti invito a condividere Y Iscriviti facendo clic sul pulsante "Unisciti a questo sito" per ascoltare altri post come questo 😉