qui è spiegato nello specifico cosa intendono per multitasking. non mi convince molto
MultitaskingAttesissima funzione che consente di tenere aperte più applicazioni contemporaneamente.
Il problema principale è stato quello di creare un sistema di multitasking in grado di reggere fluidamente le applicazioni aperte e di non prosciugare la già limitata batteria dell’iPhone.
Il funzionamento è molto semplice: cliccando due volte sul tasto Home comparirà in basso un piccolo dock in cui sono elencate le applicazioni attive.
Logicamente il multitasking funzionerà con tutte le applicazioni installate su iPhone tramite AppStore.
Quando siamo sulla Springboard possiamo attivare il multitasking ed avere un effetto simile a questo, con in basso le applicazioni “attiveâ€, in alto tutte le altre.
Per chiudere le applicazioni, dopo aver attivato la schermata di multitasking, non bisogna far altro che tenere premuto sull’icona relativa per circa due secondi e cliccare poi sul segno di divieto (colore rosso).Apple assicura che il multitasking su iPhone non inciderà sulla batteria e sulle prestazioni. Ma come è possibile? A spiegarlo ci ha pensato Scott Forstall, uno degli ingegneri che ha lavorato al progetto.
In pratica Apple ha fornito 7 servizi in forma di API agli sviluppatori, che permettono una gestione ottimizzata delle applicazioni in background. Il multitasking funzionerà anche nella schermata “Sbloccaâ€: questo significa che, pur bloccando l’iPhone, i servizi non verranno disconnessi e sarà possibile, ad esempio, mantenere aperto Skype.
Le applicazioni create utilizzando il nuovo SDK 4.0 non vengono più interrotte quando l’utente preme il tasto Home, ma vengono trasferite in quello che Apple chiama “a background execution context“, e cioè quella barra di applicazioni aperte che abbiamo visto in precedenza.
Per molte applicazioni questo significa che entrano in uno stato di “sospensione†nell’esecuzione subito dopo aver premuto il tasto Home. Mantenere l’applicazione in memoria evita il successivo ciclo di caricamento in caso di riapertura e consente all’applicazione semplicemente di riattivare se stessa, migliorando l’esperienza complessiva dell’utente. Sospendere l’applicazione migliora anche le performance del sistema, riducendo al minimo l’uso della memoria e le prestazioni dell’applicazione in primo piano.
Sebbene la maggior parte delle applicazioni vengono sospese poco dopo essere state messe in background, quelle che necessitano di continuare a lavorare in background, possono farlo utilizzando una delle seguenti tecniche:
1. Un’applicazione può richiedere al sistema una quantità finita di tempo necessario per completare qualche compito importante (stiamo trasferendo un file da computer a Mac o scaricando un file da internet utilizzando un’applicazione apposita, come GoodReader: possiamo metterla in background e utilizzare un’altra applicazione senza che il trasferimento venga interrotto);
2. Un’applicazione può sfruttare uno dei servizi specifici messi a disposizione da Apple e che richiedono l’esecuzione in background;
Un’applicazione può sfruttare le notifiche locali per generare un avviso in un’ora prestabilita, anche se l’applicazione stessa non è aperta (pensate ad una classica applicazione sveglia: fino ad oggi per poter avere l’alert era necessario tenere aperta l’applicazione, con il nuovo firmware potremo semplicemente avviarla e metterla in background).
Indipendentemente dal fatto che l’applicazione sia sospesa o continui a girare in background, è sempre richiesto un lavoro supplementare per gli sviluppatori. Allo stato attuale poche applicazioni sono in grado di sfruttare il multitasking ideato da Apple, in quanto è necessario implementare determinate API perchè tali app sfruttino proprio il multitasking. Aspettiamoci quindi numerosi aggiornamenti per tantissime applicazioni nei prossimi mesi, proprio come avvenuto in questi giorni.
Cosa significa questo? Che il multitasking funzionerà soltanto sulle applicazioni che implementeranno una delle sette API presentate da Apple:
* Background Audio, che consente di utilizzare applicazioni come Pandora tramite multitaksing (potremo ad esempio ascoltare la radio anche se l’applicazione relativa è stata “chiusaâ€);
* Background VoIP: le applicazioni come Skype saranno in grado di ricevere chiamate anche mentre si stanno utilizzando altre applicazioni e persino quando si è sulla lockscreen, con l’iPhone bloccato.Background Location, relativa alle applicazioni che sfruttano il GPS. Fino ad oggi chiudendo un’applicazione come TomTom si perdeva la posizione GPS, mentre con il multitasking questo non accadrà più. Ad esempio un navigatore satellitare che sfrutti questa API sarebbe in grado di avvertire l’utente ogni qual volta viene data una nuova indicazione, anche senza avere in primo piano l’applicazione stessa;
* Local Notification: le notifiche locali di cui abbiamo parlato prima;
* Notifiche Push: ormai famose in quanto esistenti da tempo, sfruttano la connessione internet per poter inviare messaggi all’utente (importante per le applicazioni di IM, ad esempio);
* Task Completion: possibilità di effettuare delle operazioni chiudendo l’applicazione (ne abbiamo parlato prima, con l’esempio di GoodReader);
* Fast app switching: la API che consente all’utente di passare da un’applicazione all’altra e agli sviluppatori di far riprendere lo stato di un’applicazione così dove l’utente l’aveva lasciata.
Si tratta quindi di una vera e propria rivisitazione del concetto di background classico, a cui tutti noi siamo abituati. Apple ha scelto una via alternativa, che potrebbe rivelarsi vincente se effettivamente prestazioni e batteria non ne risentiranno, e azzardata se invece il sistema alla lunga risulti macchinoso e poco funzionale, soprattutto per il fatto che non tutte le applicazioni potranno effettivamente beneficiarne.