Gli utenti spesso investono molto tempo e impegno per creare un'identità, aggiungere dati e personalizzare impostazioni e preferenze all'interno della tua app. Preservare questi dati e la personalizzazione per gli utenti quando eseguono l'upgrade a un nuovo dispositivo o reinstallano la tua app è un aspetto importante per garantire un'ottima esperienza utente. Questa pagina descrive i dati di cui eseguire il backup e le opzioni di backup a tua disposizione.
Seleziona i dati di cui eseguire il backup

Figura 1. Assicurati di ripristinare i dati dell'identità, i dati delle app e le impostazioni per gli utenti che tornano alla tua app.
Gli utenti generano molti dati quando utilizzano le tue app. Assicurati di eseguire il backup dei dati appropriati. Il backup solo di alcuni dati può frustrare gli utenti quando aprono l'app su un nuovo dispositivo e scoprono che manca qualcosa. I dati importanti di cui eseguire il backup per gli utenti sono i dati di identità, i dati delle app generati dagli utenti e i dati delle impostazioni, come descritto di seguito.
Dati sull'identità
Puoi contribuire a mantenere il coinvolgimento degli utenti esistenti trasferendo il loro account quando iniziano a utilizzare un nuovo dispositivo.
Per informazioni dettagliate sul trasferimento delle credenziali di autenticazione e dei token di autorizzazione, vedi Block Store.
Per esplorare le soluzioni di accesso con Google per facilitare l'accesso degli utenti alla tua app, consulta Google Identity.
Dati dell'app
I dati delle app possono includere contenuti generati dagli utenti, come testo, immagini e altri contenuti multimediali. Puoi sincronizzare i dati delle app tra i dispositivi Android e salvare i dati che vuoi utilizzare durante il normale ciclo di vita dell'app. Puoi anche ripristinare i dati di un utente di ritorno su un nuovo dispositivo. Per scoprire come fare, consulta Trasferire i dati utilizzando gli adattatori di sincronizzazione.
Dati delle impostazioni
Assicurati di eseguire il backup e il ripristino anche dei dati delle impostazioni per conservare le preferenze personalizzate di un utente di ritorno su un nuovo dispositivo. Puoi ripristinare i dati delle impostazioni anche se un utente non accede alla tua app. Puoi eseguire il backup delle impostazioni che un utente imposta esplicitamente nell'interfaccia utente della tua app, nonché dati trasparenti, ad esempio un flag che indica se un utente ha visualizzato una procedura guidata di configurazione.
Per preservare il più possibile l'esperienza di un utente esistente su un nuovo dispositivo, assicurati di eseguire il backup delle seguenti impostazioni utente:
Qualsiasi impostazione modificata dall'utente, ad esempio quando utilizza la libreria delle preferenze Jetpack.
Indica se l'utente ha attivato o disattivato le notifiche e le suonerie.
Flag booleani che indicano se l'utente ha visualizzato le schermate di benvenuto o i suggerimenti introduttivi.
Figura 2. Il ripristino delle impostazioni sui nuovi dispositivi contribuisce a garantire un'ottima esperienza utente.
Evita di eseguire il backup degli URI, perché possono essere instabili. In alcuni casi, il ripristino su un nuovo dispositivo mobile può comportare un URI non valido che non punta a un file valido. Un esempio è l'utilizzo degli URI per salvare la preferenza della suoneria di un utente. Quando l'utente reinstalla l'app, l'URI potrebbe non puntare ad alcuna suoneria o a una suoneria diversa da quella prevista. Anziché eseguire il backup dell'URI, puoi eseguire il backup di alcuni metadati dell'impostazione, ad esempio il titolo di una suoneria o un hash della suoneria.
Opzioni di backup
Android offre due modi per eseguire il backup dei dati delle app sul cloud: Backup automatico per le app e backup chiave-valore. Il backup automatico, disponibile su Android versione 6.0 e successive, conserva i dati caricandoli sull'account Google Drive dell'utente. Il backup automatico include i file nella maggior parte delle directory assegnate alla tua app dal sistema. Il backup automatico può archiviare fino a 25 MB di dati basati su file per app. La funzionalità di backup chiave-valore (precedentemente nota come API Backup e servizio di backup Android) conserva i dati delle impostazioni sotto forma di coppie chiave-valore caricandoli nel servizio di backup Android.
In genere, consigliamo il backup automatico perché è abilitato per impostazione predefinita e non richiede alcun intervento per l'implementazione. Le app che hanno come target Android 6.0 o versioni successive vengono attivate automaticamente per il backup automatico. La funzionalità Backup automatico è un approccio basato sui file per il backup dei dati delle app. Sebbene il backup automatico sia semplice da implementare, valuta la possibilità di utilizzare la funzionalità di backup delle coppie chiave-valore se hai esigenze più specifiche per il backup dei dati.
La seguente tabella descrive alcune delle principali differenze tra il backup di coppie chiave-valore e il backup automatico:
Categoria | Backup coppia chiave-valore (Android Backup Service) | Backup automatico di Android |
---|---|---|
Versioni supportate | Android 2.2 (livello API 8) e versioni successive. | Android 6.0 (livello API 23) e versioni successive. |
Partecipazione | Disabilitato per impostazione predefinita. Le app possono attivare la funzionalità dichiarando un agente di backup. | Questa opzione è abilitata per impostazione predefinita. Le app possono disattivare i backup. |
Implementazione |
Le app devono implementare un BackupAgent . L'agente di backup definisce quali dati eseguire il backup e come ripristinarli.
|
Per impostazione predefinita, il backup automatico include quasi tutti i file dell'app. Puoi utilizzare XML per includere ed escludere file. Internamente, il backup automatico si basa su un agente di backup incluso nell'SDK. |
Frequenza | Le app devono inviare una richiesta quando sono presenti dati pronti per il backup. Le richieste di più app vengono raggruppate ed eseguite ogni poche ore. | I backup vengono eseguiti automaticamente, circa una volta al giorno. |
Trasmissione | I dati di backup possono essere trasmessi tramite Wi-Fi o dati mobili. | I dati di backup vengono trasmessi tramite Wi-Fi per impostazione predefinita, ma l'utente del dispositivo può attivare i backup tramite rete mobile. Se il dispositivo non è mai connesso a una rete Wi-Fi o l'utente non modifica le impostazioni di backup dei dati mobili, il backup automatico non viene mai eseguito. |
Condizioni di trasmissione |
Definisci
le condizioni del dispositivo necessarie per il backup in
onBackup() .
|
Definisci le condizioni del dispositivo richieste per il backup nel file XML, se utilizzi l'agente di backup predefinito. |
App chiusa | Le app non vengono chiuse durante il backup. | Il sistema chiude l'app durante il backup. |
Spazio di archiviazione dei backup | I dati di backup vengono archiviati nel servizio di backup Android e sono limitati a 5 MB per app. Google tratta questi dati come informazioni personali in conformità con le Norme sulla privacy di Google. | I dati di backup vengono archiviati in Google Drive dell'utente e sono limitati a 25 MB per app. Google tratta questi dati come informazioni personali in conformità con le Norme sulla privacy di Google. |
Accesso utente | Non richiede l'accesso dell'utente alla tua app. L'utente deve aver eseguito l'accesso al dispositivo con un Account Google. | Non richiede l'accesso dell'utente alla tua app. L'utente deve aver eseguito l'accesso al dispositivo con un Account Google. |
API | I metodi API correlati sono basati sulle entità: | I metodi API correlati sono basati su file: |
Ripristino dei dati | I dati vengono ripristinati quando l'app viene installata. Se necessario, puoi richiedere un ripristino manuale. | I dati vengono ripristinati quando l'app viene installata. Gli utenti possono selezionare un elenco di set di dati di backup se sono disponibili più set di dati. |
Documentazione | Esegui il backup delle coppie chiave-valore con Android Backup Service | Eseguire il backup dei dati utente con il backup automatico |
Per ulteriori informazioni su come funzionano il backup e il ripristino per ogni servizio, consulta Testare il backup e il ripristino.