Je suis l'implémentation du nouveau BackupAgentHelper
à partir d'Android OS 2.2.Android 2.2 Sauvegarde des données: comment sauvegarder DefaultSharedPreferences?
Pour qu'il fonctionne, vous devez fournir le nom du SharedPreferences
que vous souhaitez sauvegarder:
public class MyPrefsBackupAgent extends BackupAgentHelper {
// The name of the SharedPreferences file
static final String PREFS = "user_preferences";
// A key to uniquely identify the set of backup data
static final String PREFS_BACKUP_KEY = "prefs";
// Allocate a helper and add it to the backup agent
void onCreate() {
SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, PREFS);
addHelper(PREFS_BACKUP_KEY, helper);
}
}
Le problème est que j'utilise la méthode PreferenceManager.getDefaultSharedPreferences()
dans mon application pour obtenir l'instance de préférences par défaut partagé. Maintenant, je dois fournir le nom de ce fichier. Comment puis-je savoir quel est ce nom?
(Et pourquoi ils ne fournissent une aide qui fait juste une sauvegarde DefaultSharedPreferences
?)
Oui, si vous naviguez/données/données//shared_prefs vous pouvez voir les fichiers utilisés pour SharedPreferences. Le nom dont vous avez besoin est en effet _preferences. En outre, j'ai créé un problème pour demander une méthode plus pratique pour cela pour les SharedPreferences "par défaut": http://code.google.com/p/android/issues/detail?id=11922. (Je suis d'accord avec vous, cela devrait être là.) –
Comment sauvegarder un ensemble de données avec une PreferenceActivity? – whynot
Si vous définissez un point d'arrêt à 'prefs = PreferenceManager.getDefaultSharedPreferences (this);' vous pouvez regarder mBackupFile pour le nom du fichier xml. –