Wprowadzam nową wersję BackupAgentHelper
z systemu Android OS 2.2.Android 2.2 Backup danych: jak utworzyć kopię zapasową DefaultSharedPreferences?
go do pracy musisz podać nazwę SharedPreferences
które chcesz kopii zapasowej:
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);
}
}
problem jest użycie metody PreferenceManager.getDefaultSharedPreferences()
w mojej aplikacji, aby uzyskać wspólne wystąpienie domyślne preferencje. Teraz muszę podać nazwę tego pliku. Jak mogę się dowiedzieć, co to za nazwa?
(I dlaczego oni nie dostarczają pomocnika, który właśnie robi DefaultSharedPreferences
zapasową?)
Tak, jeśli przeglądać/data/data//shared_prefs widać pliki używane dla SharedPreferences. Imię, którego potrzebujesz, to rzeczywiście _preferencje . Ponadto utworzyłem problem z prośbą o wygodniejszy sposób wykonania tej czynności dla "domyślnych" SharedPreferences: http://code.google.com/p/android/issues/detail?id=11922. (Zgadzam się z Tobą, że powinno tam być.) –
Jak wykonać kopię zapasową zestawu danych za pomocą PreferenceActivity? – whynot
Jeśli ustawisz punkt przerwania w 'prefs = PreferenceManager.getDefaultSharedPreferences (this);' możesz spojrzeć na mBackupFile dla nazwy pliku xml. –