L'utilizzo dei dati mobili è costoso, soprattutto se i costi dei piani dati non sono accessibili a tutti. Gli utenti Android devono avere la possibilità di ridurre l'utilizzo dei dati o bloccarlo completamente nelle app. La funzionalità Risparmio dati nella release Android 7.0 fornisce questa funzionalità all'utente.
La funzionalità Risparmio dati può essere attivata o disattivata dall'utente. Gli sviluppatori di app devono utilizzare una nuova API per verificare se la modalità Risparmio dati è attiva. Se è attiva, gli sviluppatori di app possono gestire la situazione in modo elegante ottimizzando le loro applicazioni per un accesso a dati ridotto o nullo.
Gli utenti finali ne beneficiano perché potranno controllare quali app possono accedere ai dati in background e quali solo in primo piano. In questo modo, viene garantito lo scambio di dati in background quando la modalità Risparmio dati è attiva, in base al controllo dell'utente.
Implementazione
Poiché Risparmio dati è una funzionalità della piattaforma, i produttori di dispositivi ne acquisiscono la funzionalità per impostazione predefinita con la release N. Trova i file di origine in:
packages/apps/Settings/src/com/android/settings/datausage
Interfaccia delle impostazioni
Un'interfaccia utente predefinita per le impostazioni del Risparmio dati è fornita nell'Android Open Source Project (AOSP). Guarda gli screenshot di seguito per alcuni esempi.
Questi screenshot mostrano la modalità Risparmio dati in uso.

Figura 1. Disattivare/attivare la modalità Risparmio dati

Figura 2. Quando sono attivi sia il risparmio energetico sia il Risparmio dati

Figura 3. Schermata Utilizzo dati specifico per app: Impostazioni > App > Utilizzo dati

Figura 4. Stati del risparmio dati nel menu Impostazioni rapide
App
Importante: gli implementatori dei dispositivi non devono inserire le app nella lista consentita. Anche se lo fanno, gli utenti possono rimuoverli. L'inclusione di altre app costringe gli utenti a decidere su quali applicare il Risparmio dati.
Tutti gli sviluppatori di app devono intervenire per implementare Risparmio dati, inclusi OEM e operatori con app precaricate. Consulta la pagina Risparmio dati su developer.android.com per istruzioni per gli sviluppatori di app su come rilevare e monitorare gli stati della modalità Risparmio dati. Per ulteriori dettagli utili per i partner, consulta le sezioni seguenti.
Per l'ottimizzazione in modalità Risparmio dati, le app devono:
- Rimuovi le immagini non necessarie
- Utilizza una risoluzione inferiore per le immagini rimanenti
- Utilizza video con una velocità in bit inferiore
- Attivare le esperienze "lite" esistenti
- Comprimi i dati
- Rispettare lo stato della rete a consumo rispetto a quella non a consumo anche quando Risparmio dati è attivo
Al contrario, per funzionare bene con il Risparmio dati, le app non devono:
- Riproduzione automatica dei video
- Precaricare contenuti/allegati
- Scaricare aggiornamenti / codice
- Chiedi di essere inserito nella lista consentita, a meno che i dati in background non siano effettivamente parte della funzionalità di base.
- Trattare la lista consentita come una licenza per utilizzare più larghezza di banda
Convalida
Gli implementatori possono assicurarsi che la loro versione della funzionalità funzioni come previsto eseguendo il seguente test CTS:
com.android.cts.net.HostsideRestrictBackgroundNetworkTests
Inoltre, i comandi adb
possono essere utilizzati per eseguire i test manualmente,
eseguendo prima questo comando per visualizzare tutte le opzioni disponibili:
adb shell cmd netpolicy
Ad esempio, questo comando restituisce gli UID delle app inserite nella lista consentita:
adb shell cmd netpolicy list restrict-background-whitelist