L'esecuzione di operazioni in background è una parte fondamentale della creazione di app per Android moderne che siano reattive, efficienti e rispettose delle risorse del dispositivo dell'utente. Il lavoro in background comprende qualsiasi attività che la tua app deve eseguire quando non è visibile in primo piano, come il recupero di dati da un server o l'elaborazione di immagini.

Gestire le complessità dell'esecuzione in background è fondamentale per creare applicazioni resilienti che funzionino correttamente su tutti i dispositivi.

Inizia a utilizzare Background Work

Consulta la guida alla scelta dell'API di lavoro in background più adatta al tuo caso d'uso e considerala nel contesto del ciclo di vita dei processi e delle app di Android.
Guida
Scegliere l'API di lavoro in background giusta può essere complesso. Questa pagina fornisce indicazioni chiare su quando utilizzare il lavoro asincrono, WorkManager, i servizi in primo piano o una scelta alternativa. Scopri quale API è più adatta al tuo caso d'uso specifico.
Guida
Esplora i concetti fondamentali del ciclo di vita del processo Android e il modo in cui influisce sul comportamento e sulla gestione delle risorse della tua app. Scopri come il sistema gestisce i processi delle app in base allo stato di attività, consentendoti di progettare applicazioni resilienti ed efficienti che rispondono correttamente alle interruzioni avviate dal sistema.

Concetti principali

Alcune delle API e degli strumenti più comuni per eseguire il lavoro in background includono WorkManager, servizi in primo piano, sveglie e trasmissioni. Ogni soluzione avrà implicazioni diverse per la durata della batteria dei dispositivi degli utenti.
WorkManager è la soluzione consigliata per il lavoro in background persistente su Android. Scopri come utilizzare questa potente libreria per pianificare attività che persistono dopo i riavvii delle app e dei dispositivi e scopri le sue funzionalità chiave per la gestione dei vincoli e delle norme di ripetizione flessibili.
I servizi in primo piano offrono un modo efficace per eseguire immediatamente attività che non devono essere interrotte. Scopri quando e come dichiarare, avviare e arrestare un servizio in primo piano con una notifica persistente, assicurandoti che la tua app esegua attività critiche senza essere terminata dal sistema.
Le sveglie sono uno strumento fondamentale per programmare il lavoro in base al tempo. Questa pagina spiega come utilizzare AlarmManager per pianificare allarmi esatti e non esatti per le attività che devono essere eseguite a un'ora specifica o entro un determinato intervallo di tempo, anche quando l'app non è in esecuzione. Vengono inoltre trattate le best practice per la gestione delle sveglie e per garantire che siano ottimizzate per la durata della batteria.
Scopri come inviare e ricevere trasmissioni per gestire eventi di sistema e messaggi da altre app. Scoprirai anche i ricevitori registrati nel contesto e dichiarati nel manifest e le moderne limitazioni di sistema che si applicano.

Indicazioni di base per caso d'uso

La soluzione giusta varia in base al tuo caso d'uso. Android fornisce molte API specifiche per le attività, che sono ottimizzate per scenari particolari e spesso portano a un maggiore risparmio energetico e a meno limitazioni rispetto all'utilizzo di WorkManager e dei servizi in primo piano.

Questa sezione elenca alcuni dei casi d'uso più comuni e la soluzione consigliata.

La maggior parte dei casi d'uso richiede la posizione solo quando l'utente interagisce con l'app. Tuttavia, se la tua app deve accedere alla posizione in background, utilizza l'API Fused Location Provider. Utilizza questa API per ottenere l'ultima posizione nota memorizzata nella cache o richiedere aggiornamenti periodici della posizione.
Aggiorna GlanceAppWidgets in modo efficiente quando l'app è in background utilizzando il metodo di aggiornamento.
Utilizzare Bluetooth Low Energy (BLE) per comunicare con i dispositivi periferici in background. Scopri come eseguire la scansione, connettere e mantenere una connessione persistente ai dispositivi rispettando le limitazioni a livello di sistema e risparmiando batteria.
Per il monitoraggio dei passi sui dispositivi mobili, valuta la possibilità di leggere i passi da Connessione Salute, l'archivio dati Android per i dati su salute e fitness.
Per le attività in background avviate dall'utente che comportano il trasferimento di dati (inclusi download e caricamento) e che hanno lo scopo di tenere informato l'utente sui progressi, utilizza il tipo di processo di trasferimento di dati avviato dall'utente. Questo tipo di job è ottimizzato per i trasferimenti di dati a lunga esecuzione e ha la priorità nel sistema.
Utilizza la libreria Media3 per supportare la riproduzione in background mentre l'app non è visibile all'utente.

Comprendere le ottimizzazioni del consumo energetico

Considerare gli effetti del lavoro in background sul consumo energetico è fondamentale per creare app per Android di alta qualità. Ti consente di creare app più resilienti ed efficienti dal punto di vista della batteria comprendendo come il sistema gestisce le risorse. L'ottimizzazione per il consumo energetico riduce il consumo della batteria, impedisce la chiusura forzata dell'app da parte del sistema e offre un'esperienza utente più fluida.
Guida

Il sistema assegna la priorità alle richieste di risorse delle app in base allo stato del dispositivo, allo stato dell'app e al bucket di standby dell'app.

Scopri di più su come la tua app può funzionare entro i limiti delle risorse di gestione dell'alimentazione del dispositivo per eseguire in modo affidabile il lavoro in background.

Guida
Per completare le attività critiche, l'app potrebbe dover impedire alla CPU del dispositivo di entrare in stato di sospensione. Questa guida ti aiuta a selezionare i metodi più appropriati per mantenere attivo un dispositivo.
Guida
Scopri come adattare la tua app a Doze e App Standby per migliorare l'efficienza della batteria e l'esperienza utente. Comprendendo queste modalità di risparmio energetico, puoi assicurarti che la tua app funzioni in modo ottimale riducendo al minimo il suo impatto sulla durata della batteria del dispositivo.
Guida
A partire da Android 9, i dispositivi dispongono di funzionalità di gestione dell'alimentazione che influiscono su tutte le app. Scopri come testare la tua app per assicurarti che funzioni correttamente su tutti i dispositivi, anche con funzionalità come il risparmio energetico, i bucket di standby delle app e le limitazioni in background.

Ultime notizie