Il ciclo di vita di un’app Android

19 Settembre 201426 commenti
Vi siete mai chiesti come funziona e cosa succede quando utilizzate le vostre app android?

[ad#ad-lipschiziano]

Bisogna sapere che un app Android è organizzata in cosiddette Activity (attività). All’avvio di un app il sistema Android definisce una serie di metodi del ciclo di vita per l’attività in cui si imposta l’interfaccia utente e altri componenti. Se l’utente esegue un’azione che inizia un’altra attività o passa a un’altra applicazione, il sistema chiamerà un altro insieme di metodi del ciclo di vita sulla vostra attività, spostando l’attività in background (dove l’attività non è più visibile, ma l’istanza e il suo stato rimangono intatti).

E cosi possibile dichiarare come un attività deve comportarsi per esempio,se si sta costruendo un lettore video in streaming, è possibile mettere in pausa il video e terminare la connessione di rete quando l’utente passa a un’altra applicazione. Quando l’utente ritorna, è possibile riconnettersi alla rete e consentire all’utente di riprendere il video dallo stesso punto.

comprendiamo il ciclo di vita di un app

basic-lifecycle

Questa figura è un illustrazione semplificata del ciclo di vita di una app e mette in mostra gli stati che può assumere un attività durante interazione con l’utente.

A seconda della complessità della vostra attività, probabilmente non sarà necessario implementare tutti i metodi del ciclo di vita. Tuttavia implementare i metodi del ciclo di vita assicura che l’applicazione si comporta bene in diverse occasioni tra cui:

  • Evita il  crash se l’utente riceve una telefonata o passa ad un altra applicazione.
  • Elimina il consumo di preziose risorse di sistema quando l’utente non sta utilizzando app.
  • Non si perdono i progressi dell’utente se si lasciano l’app e si torna ad essa in un secondo momento.
  • Evitare il crash o perdità  di progressi dell’utente quando lo schermo ruota.

Gli stati dell’applicazioni più importanti sono descritti in seguito e sono quelli che ogni applicazione assume per una durata di tempo maggiore.

RESUMED

In questo stato, l’attività è in primo piano e l’utente può interagire  (A volte viene indicata come stato di “esecuzione“.)

PAUSED

In questo stato, l’attività è parzialmente oscurata da un’altra attività, l’altra attività che è in primo piano è semitrasparente o non copre l’intero schermo. L’attività di pausa non riceve l’input dell’utente e non può eseguire nessun codice.

STOPPED

In questo stato, l’attività è completamente nascosta e non visibile all’utente; cioè in background. Durante l’arresto, l’istanza di attività e tutte le sue informazioni di stato come variabili membro vengono salvati e quindi mantenuti, ma non possono eseguire alcun codice.

Gli altri stati (Created and Started) sono transitori e il sistema si muove rapidamente da loro a uno stato successivo . Per esempio dopo che il sistema chiama onCreate (), chiama subito onStart (), che è rapidamente seguito da onResume ().

Per maggiori informazioni visita questo link della guida ufficiale android.

26 risposte a “Il ciclo di vita di un’app Android”

  1. […] (…)Continua a leggere Il ciclo di vita di un’app Android su Androidiani.Com […]

  2. Il ciclo di vita di un’app Android | Ultime Notizie Trita Web ha detto:

    […] Continua a Leggere […]

  3. Il ciclo di vita di un’app Android - WikiFeed ha detto:

    […] (…)Continua a leggere Il ciclo di vita di un’app Android su Androidiani.Com […]

  4. moffolo ha detto:

    Alessandro, penso che tu abbia sbagliato a scrivere il tuo nome, o sbaglio? :D

  5. Il ciclo di vita di un’app Android | mobilemakers.org ha detto:

    […] (…)Continua a leggere Il ciclo di vita di un’app Android su Androidiani.Com […]

  6. […] (…)Continua a leggere Il ciclo di vita di un’app Android su Androidiani.Com […]

  7. realtebo ha detto:

    Apprezzo questo articolo, invece di parlare sempre e solo di marketing, grazie !

  8. fkjfFFrffff ha detto:

    CONTINUIAMO DOPO… ASPETTATEMI

  9. fkjfFFrffff ha detto:

    CONTINUIAMO DOPO… ASPETTATEMI CONTINUIAMO DOPO… ASPETTATEMI

  10. fkjfFFrffff ha detto:

    CONTINUIAMO DOPO… ASPETTATEMI CONTINUIAMO DOPO… ASPETTATEMI CONTINUIAMO DOPO… ASPETTATEMI CONTINUIAMO DOPO… ASPETTATEMI CONTINUIAMO DOPO… ASPETTATEMI

  11. Luke_Friedman ha detto:

    Ringrazia si scrive con una “z”.

  12. DFF ha detto:

    MI GTGTGTGGT

  13. DFF ha detto:

    MI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUM

  14. DFF ha detto:

    MI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUMMI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUMMI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUM

  15. DFF ha detto:

    MI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUMMI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUMMI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUMMI TROVO IN DISACCORDO CON L’UTENTE ZIKY ADMIN DEL FORUM

  16. Mattia ha detto:

    La mia tesina di maturità!

  17. Samuele9 ha detto:

    Non posso mettere in discussione l’argomento dell’articolo perché non sono così informato, chi segue il blog da qualche mese almeno (in questo periodo non sono presente molto) sa che non critico mai l’autore per errori e quant’altro perché la trovo una cosa antipatica, però cavolo qua è da mettersi le mani nei capelli. Dai per favore non vuole essere un insulto, rileggi e ti renderai conto. Ci sono errori grammaticali e di sintassi, in blog di questo calibro non se li può permettere, addirittura nella stessa frase si usa prima il singolare e poi il plurale. Mi dispiace ma dovevo dirlo. Fateveli leggere da qualcuno, una fidanzata, un amico, il vicino…

  18. masterblack91 ha detto:

    molto utile questo tipo di articoli,volevo fare una domanda,magari a qualche sviluppatore qui,le app in background non possono eseguire alcun codice,ma questo perchè è prassi programmare così,oppure è proprio un limite del funzionamento della dalvik? Cioè non è possibile fare in modo che magari,per esempio,guardo un video di youtube,poi passo ad un’altra app e nel frattempo continua il buffering del video? Richiederebbe troppa ram/processore anche per i telefoni moderni? Oppure è un limite del linguaggio di programmazione? :)

    • LamerTex ha detto:

      Certo che si può, altrimenti come funzionerebbero applicazioni tipo tasker o un qualsiasi riproduttore musicale?
      In android il multitasking è vero, se per esempio metti a caricare una pagina su chrome e passi subito ad un altra applicazione quando tornerai su chrome la pagina sarà stata caricata in background :)

      • masterblack91 ha detto:

        solo che il mio cell non carica le pagine web che lascio in background :/ Perchè troppo poco potente…fino ad ora è il primo telefono android (galaxy ace) quindi non sapevo come si comportasse android nello specifico su altri cell,grazie per l’info :)

    • Alessandro Finocchiaro ha detto:

      In android c’è sempre un processo attivo alla volta in foreground.
      Poi ci sono i processi che gestiscono servizi i quali possono continuare a girare anche in background (Es se vuoi montare un server web sul tuo telefono quello è un classico esempio di servizio) , quindi i servizi possono continuare a girare mentre tutti i processi che interagiscono con l’utente sono fermi tranne quello in primo piano.

  19. LoSbronzo ha detto:

    Oooh finalmente qualcosa di nuovo, di fresco, non parlo del mio drink ma dell’articolo ovviamente. Avevo smesso da un po di commentare su Androidiani per via della monotonia degli articoli, ma questo mi ha fatto tornare la voglia di salutarvi. Articoli del genere, per quanto per alcuni possano contenere informazioni basiche e scontate, sono comunque volti all’informare e al far conoscere ciò che si usa tutti i giorni. Ci voleva proprio. Grazie Androidiani ;)

  20. O'Biond ha detto:

    Mini tutorial di base.. A qualcuno potrebbe stuzzicare l appetito!

Social Media Auto Publish Powered By : XYZScripts.com