Sistemi Mobili e Wireless Android Activity



Похожие документы
Android. Ciclo di vita di Activity, Service e Processi

Android. Android03: Ciclo di vita di una Activity.

Sistemi Mobili e Wireless Android - Servizi

Ciclo di vita delle aevità Android Mobile Programming Prof. R. De Prisco

14/10/2015 ALESSANDRAZULLO SVILUPPO DI APPLICAZIONI ANDROID- VERSIONE 1. Alessandra Zullo

Sistemi Mobili e Wireless Android Primi passi

Sistemi Mobili e Wireless Android Localizzazione utente

1 2 Fase di autenticazione utente

Programmazione. Android

Tecniche di progettazione e sviluppo di applicazioni mobile

Consiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica

Android. Anatomia di una applicazione

Corso di Sistemi di Elaborazione delle informazioni

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Inserimento esame nella procedura esami on-line. Passo 1: - Voce esse3: Calendario Esami->Esami Profitto->Abilita docenti

Gestione Turni. Introduzione

Configurazione della ricerca desktop di Nepomuk. Sebastian Trüg Anne-Marie Mahfouf Traduzione della documentazione in italiano: Federico Zenith

Sistemi Mobili e Wireless Android - Dati persistenti: SQLite

Guida alla registrazione on-line di un DataLogger

2. LOGIN E RECUPERO DATI DI ACCESSO

Impossibile inviare o ricevere messaggi .

Android. Implementare una interfaccia utente

Guida utente alla compilazione delle richieste di contributo on-line per le Associazioni dei Consumatori

PROMOZIONI ISTRUZIONI DI UTILIZZO

Gestione appelli d esame

Sistema operativo: Gestione dei processi

DW-SmartCluster (ver. 2.1) Architettura e funzionamento

2009 Elite Computer. All rights reserved

Sistemi Mobili e Wireless Introduction

Istruzioni per la configurazione di IziOzi

Manuale d uso del portale di controllo per la PEC (NewAgri PEC)

GESTIONE SOGGETTI INCARICATI MANUALE UTENTE VERSIONE 1.0

SISTEMI MULTIAGENTE. Esercizio

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

1. Con il ricevitore agganciato, premere o un tasto linea assegnato qualsiasi. 2. Comporre il numero 3. Premere il bottone Dial

Siti di commercio elettronico: caratteristiche ed esempi

presenta Il posto sempre sicuro dove archiviare tutti i tuoi dati

InBank. Manuale App ios. Phoenix Informatica Bancaria S.p.A.

MANUALEDIUTILIZZO MODULO CRM POSTVENDITA

Cliens Redigo Versione Aggiornamento al manuale.

MANUALE ESSE3 Gestione Registro delle lezioni

Invio SMS. DM Board ICS Invio SMS

1. GESTIONE DEL PASS OE FUNZIONI DEL CRUSCOTTO

RIFERIMENTI ATTORI GLOSSARIO. ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova

corso di Access MICROSOFT ACCESS Docente: Andrea Mereu Università degli studi di Cagliari 16 aprile 9 maggio 2012

Gestione Risorse Umane Web Work-flow Selezione

Sistemi Operativi (modulo di Informatica II) I processi

Registratori di Cassa

Gestione Risorse Umane Web

Scenari esemplificativi di utilizzo delle Mailing List

Database 1 biblioteca universitaria. Testo del quesito

Telematica II 17. Esercitazione/Laboratorio 6

Tecnologia di un Database Server (centralizzato) Introduzione generale

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Università degli Studi di Ferrara - A.A. 2014/15 Dott. Valerio Muzzioli ORDINAMENTO DEI DATI

Guida I-Help App. Android

Assicurazione NON Soci in Attività Sezionale

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte.

Guida. Macchina Scratch

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

flusso delle informazioni... 2 password... 3 password/ inserimento di una nuova richiesta... 4 le condizioni di vendita... 6

Manuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

Inizializzazione, Assegnamento e Distruzione di Classi

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

Workland CRM. Workland CRM Rel /11/2013. Attività --> FIX. Magazzino --> NEW. Nessuna --> FIX. Ordini --> FIX

Collegamento remoto vending machines by do-dots

Progetto familink EGF

SCENARI. v (Maggio 2015)

INVIO SMS

Axios RE App. Installazione. ios. Android

Manuale LiveBox APPLICAZIONE ANDROID.

Guida all utilizzo del web tool di gestione accesso ai Datacenter

Il Sistema Operativo

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1

5-1 FILE: CREAZIONE NUOVO DOCUMENTO

GESCO MOBILE per ANDROID

Faber System è certificata WAM School

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

Manuale Utente MyFastPage

YOUTUBE: UN CANALE PER LA PARTECIPAZIONE

Funzioni in C. Violetta Lonati

Concetto di Funzione e Procedura METODI in Java

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Comandi di Outlook Express Messaggi in partenza Comando Comandopulsante scelta rapida

SCUOLANET UTENTE FAMIGLIA

Il sistema operativo: interazione con l utente

NUOVA ALIQUOTA IVA ORDINARIA 22% Note operative per la procedura SPRING SQL Versione 2.0 1/10/2013 PREMESSA:

SPOSTARE UN FILE USANDO I COMANDI TAGLIA ED INCOLLA

MANUALE PARCELLA FACILE PLUS INDICE

Automazione Industriale (scheduling+mms) scheduling+mms.

Транскрипт:

Sistemi Mobili e Wireless Android Activity Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it

Activity Tipicamente, un'activity corrisponde ad una singola schermata visuale con la quale l'utente può interagire Le activity sono entità separate le une dalle altre, anche se fanno parte della stessa applicazione Tipicamente, esiste un'activity principale che viene visualizzata all'utente all'avvio di un'applicazione Il passaggio da un'activity ad un'altra avviene attraverso il meccanismo degli intent 2

Activity e ciclo di vita Ogni tipo di componente in Android ha un diverso ciclo di vita che definisce come il componente viene creato e distrutto Lo sviluppatore viene informato dal sistema Android sui diversi stati in cui si trova un'applicazione e può agire di conseguenza 3

Activity e ciclo di vita Le activity in un sistema Android vengono gestite come uno stack Quando viene fatta partire una nuova activity, questa viene posizionata in cima allo stack e diventa l'activity in esecuzione L'activity precedente non ritornerà attiva fino alla chiusura dell'activity in esecuzione Se l'utente preme il tasto Back sul dispositivo, l'activity corrente viene chiusa e l'activity precedente nello stack diventa attiva 4

Activity e ciclo di vita 5

Activity e ciclo di vita Un'activity può trovarsi essenzialmente in tre stati: running: l'activity è in foreground, in cima allo stack ed ha il focus (l'utente può interagirci) paused: l'activity ha perso il focus ma è ancora visibile (una nuova activity è in foreground ma è trasparente o non copre l'intero schermo) l'activity mantiene lo stato ma può essere uccisa dal sistema in caso di scarsità di memoria stopped: l'activity è completamente oscurata da un'altra activity l'activity mantiene lo stato ma può essere uccisa dal sistema in caso di scarsità di memoria 6

Activity e ciclo di vita Passaggi di stato delle activity se un'activity si trova nello stato paused o stopped, può essere terminata dal sistema attraverso una chiamata al metodo finish(), o uccidendo direttamente il processo 7

Activity e ciclo di vita Passaggi di stato delle activity quando un'activity effettua dei passaggi di stato, viene notificata attraverso dei metodi callback i metodi callback consentono al programmatore di effettuare azioni appropriate al cambiamento di stato 8

Activity e ciclo di vita I sette metodi oncreate(), onstart(), onresume(), onpause(), onstop(), onrestart(), ondestroy(), definiscono l'intero ciclo di vita delle activity il tempo di vita globale di un'activity va dalla chiamata a oncreate() alla chiamata a ondestroy() un'activity effettua la configurazione del proprio stato globale nell'oncreate() e rilascia tutte le risorse ancora da liberare nell'ondestroy() il tempo di vita visibile di un'activity va dalla chiamata onstart() alla chiamata onstop() durante questo tempo l'utente può vedere l'activity a schermo anche se questa potrebbe non essere in foreground onstart() e onstop() possono essere chiamati più volte durante il tempo di vita globale di un'activity 9

Activity e ciclo di vita I sette metodi oncreate(), onstart(), onresume(), onpause(), onstop(), onrestart(), ondestroy(), definiscono l'intero ciclo di vita delle activity il tempo di vita in foreground in un'activity va dalla chiamata onresume() alla corrispondente chiamata onpause() un'activity in foreground è in cima allo stack e può interagire con l'utente le transizioni tra i due stati onresume() e onpause() possono essere molto frequenti, ad esempio onpause() viene chiamato quando il dispositivo va in sleep o quando viene creata una nuova activity onresume() viene chiamato quando vengono inviati un risultato oppure un intent all'activity 10

Activity: metodi callback 11

Activity: metodi callback Metodo oncreate() chiamato alla creazione di un'activity deve essere sempre implementato utilizzato per effettuare la configurazione iniziale dell'activity (creazione delle view, associazione di dati alle liste, etc.) ha un parametro di tipo Bundle che permette di ripristinare lo stato precedente dell'activity, se questo è stato salvato sempre seguito da onstart() 12

Activity: metodi callback Metodo onstart() chiamato appena prima che l'activity diventi visibile all'utente sempre seguito da onresume() Metodo onrestart() chiamato dopo che un'activity è stata stoppata (onstop()) e poco prima di tornare visibile all'utente sempre seguito da onstart() Metodo onresume() chiamato poco prima che l'activity ottenga il focus e permetta l'interazione all'utente sempre seguito da onpause() 13

Activity: metodi callback Metodo onpause() chiamato poco prima che il sistema attivi un'altra activity è altamente consigliato implementare il metodo onpause() per poter salvare dati (commit) in modo persistente, fermare animazioni e tutto ciò che può consumare (inutilmente) CPU (e batteria) deve svolgere il proprio compito velocemente poichè l'activity successiva non può partire fino a quando questo metodo non ritorna seguito da onresume() se l'activity riottiene il focus o da onstop() se l'activity diventa invisibile all'utente successivamente a questo metodo, l'activity può essere terminata (killed) 14

Activity: metodi callback Metodo onstop() chiamato quando l'activity non è più visibile all'utente può essere chiamato quando l'activity sta per essere distrutta o perchè un'altra activity (nuova o già esistente) è stata ripristinata (resumed) e copre quella attuale seguito da onrestart() se l'activity verrà riattivata o da ondestroy() se l'activity verrà distrutta successivamente a questo metodo, l'activity può essere terminata (killed) 15

Activity: metodi callback Metodo ondestroy() chiamato prima della distruzione dell'activity è la chiamata finale che l'activity può ricevere può essere chiamato perchè è stato invocato il metodo finish() o perchè il sistema ha bisogno di liberare risorse è possibile distinguere i due scenari attraverso l'utilizzo del metodo isfinishing() successivamente a questo metodo, l'activity può essere terminata (killed) 16

Activity: metodi callback Le activity che hanno raggiunto uno stato killable dopo l'esecuzione di un metodo callback possono essere terminate in qualsiasi momento un'activity raggiunge uno stato killable al termine dei metodi onpause(), onstop() e ondestroy() onpause() è l'unico metodo dei tre precedenti la cui esecuzione è garantita prima che il processo che ospita l'activity venga terminato, onstop() e ondestroy() potrebbero non venire chiamati per questo motivo, bisogna sfruttare onpause() per effettuare il commit di dati non salvati 17

Activity: salvataggio dello stato Quando un'activity viene distrutta dal sistema per recuperare risorse, il suo stato non viene salvato Se l'utente ritorna all'activity, c'è bisogno di un meccanismo per ripristinare lo stato originale dell'activity Android consente di salvare e ripristinare lo stato di un'activity grazie ai due metodi callback onsaveinstancestate() e onrestoreinstancestate 18

Bundle e metodi callback Per salvare lo stato di un'activity quando viene sospesa e ripristinarlo se e quando l'activity viene riattivata (ad es., nell'oncreate()), vengono sfruttati oggetti di tipo Bundle Oggetti di tipo Bundle sono semplicemente dei contenitori di dati primitivi (int, strings, ) che servono a consentire l'ipc (comunicazione tra processi) La struttura semplice dei Bundle consente una gestione ottimizzata della memoria Non è un meccanismo di salvataggio permanente! 19

Esempio: bundle e metodi callback 20