In circostanze normali, solo una applicazione è in primo piano ed è effettivamente in esecuzione. Naturalmente ciò che sta facendo quell'app può avere un grande effetto sulla durata della batteria.
Altre applicazioni possono essere multitasking, ma solo in circostanze molto specifiche - è raro. La maggior parte delle app non farà nulla, quindi la risposta è condizionata, "no".
Quando tocchi il pulsante Home, l'app in primo piano riceve una serie di messaggi che gli consentono di prepararsi e quindi di entrare in una modalità in background. L'app non deve terminare completamente ma non è in esecuzione neanche. Per impostazione predefinita, le app potrebbero non continuare a essere eseguite in background in iOS. Possono richiedere il permesso di eseguire fino a dieci minuti in background (ad esempio per completare un download) quando ricevono la notifica che stanno per perdere lo stato di primo piano. Abusare di questo sarebbe un modo per far rifiutare un'applicazione da Apple.
Fraser Speirs di recente ho scritto un post molto interessante su questo blog, che è stato ampiamente retweetato dagli sviluppatori, perché è giusto e attuale per iOS 5.x.
Citando da esso:
Esistono esattamente cinque tipi di app autorizzate a funzionare a tempo indeterminato nello stato di background in iOS 5:
- App che riproducono audio mentre sono nello stato di sfondo. Un buon esempio è
Instacast mentre suona un podcast.
- App che tracciano la tua posizione sullo sfondo. Ad esempio, tu
vuoi ancora i comandi vocali dalla tua app di navigazione TomTom, anche se
un'altra app è attiva.
- App che ascoltano le chiamate VOIP in entrata. Se usi Skype su iOS,
puoi ricevere chiamate Skype in arrivo mentre l'app è in
Sfondo.
- App di Edicola che stanno scaricando nuovi contenuti.
- App che ricevono aggiornamenti continui da un accessorio esterno in
lo sfondo.
Ora, se stai eseguendo un'applicazione che rientra in una delle categorie precedenti, potrebbe eseguire l'elaborazione in background. Se si tratta di un'app mal scritta, è possibile che venga eseguita un'elaborazione non necessaria. Se allo stesso tempo stavi eseguendo un'app in primo piano che richiede risorse di elaborazione, è possibile che uccidere l'app in background possa rendere l'app in primo piano più veloce.
Però! Se guardi le categorie, vedrai che queste sono tutte le cose che vorresti fare se stessi usando quelle app. Non vorresti essere in grado di ricevere una chiamata Skype solo quando hai portato Skype in primo piano. Non vorresti che TomTom smettesse di darti indicazioni solo perché il tuo passeggero ha iniziato a controllare la posta. Quindi chiudere le app è quasi sempre una cattiva idea.
Ora una parola sull'elenco delle app recenti che fai apparire facendo doppio clic sul pulsante Home. Nota che il nome non è "elenco attività" o "elenco multitasking" o qualcosa del genere - è solo un elenco di app recenti. Alcuni di essi potrebbero trovarsi in background, sospesi e pronti per essere eseguiti. Alcuni potrebbero essere terminati e non funzionare affatto - se toccati dovrebbero iniziare a correre da zero. Un'app da una delle categorie elencate potrebbe persino essere in esecuzione in background. Ma questo elenco non fornisce alcuna indicazione su ciò che è in esecuzione proprio adesso . Puoi rimuovere le app dall'elenco ma se l'app non è stata eseguita non può essere chiusa. Prova: esegui un hard reset del tuo telefono, lasciandolo partire dallo schermo della mela bianca. Tutte le icone rimangono le stesse. Le app che potevano essere in esecuzione ora non sono in esecuzione ma rimangono le loro icone.
In generale, non è necessario rimuovere manualmente un'applicazione dall'elenco delle app recenti.
Se vuoi davvero terminare un'app che è attualmente in primo piano senza passare da essa prima di terminarla tramite l'elenco delle app recenti, puoi tenere premuto il pulsante sleep / wake (parte superiore del dispositivo) fino a quando slide to power off
appare. Se si tiene premuto il pulsante Home fino a quando il dispositivo non ritorna al trampolino, l'app viene chiusa. (Se si preme Annulla e si torna all'app, invece non si termina.) Prova: usa un'app con stato - ad es. fai una ricerca nell'app di iTunes Store. Terminalo in questo modo, quando riapri l'app il tuo stato è sparito. Se non lo fai, il tuo stato rimane.
Generalmente la terminazione dell'app in foreground non è mai richiesta: come avrete notato, un'app che si blocca viene automaticamente interrotta dal telefono non appena il processo watchdog rileva che l'app non risponde agli eventi di sistema.
Dall'evento stampa di iPhone OS 4 nel 2010:
Q: How do you close applications when multitasking?
A: (Scott Forstall) You don't have to. The user just uses things and doesn't ever
have to worry about it.
A: (Steve Jobs) It's like we said on the iPad, if you see a stylus, they blew it.
In multitasking, if you see a task manager... they blew it. Users shouldn't ever have
to think about it.