我一直在尝试让我Android应用程序中的sharedpreferences文件备份工作,但目前还没有成功。我正在使用开发人员指南中简单的Google代码。以下是MyPrefsBackup
类的代码。
public class MyPrefsBackup extends BackupAgentHelper {
// The name of the SharedPreferences file
static final String PREFS = "UserDB";
// 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
public void onCreate() {
SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, PREFS);
addHelper(PREFS_BACKUP_KEY, helper);
}
我认为我终于意识到了“PREFS_BACKUP_KEY”的实际含义,它必须是我存储数据的具体键。我一直在使用“prefs”,所以我想这就是为什么没有数据被备份的原因。然而,我将相当多的数据存储在“SharedPreferences”文件中,那么我怎么能够保存整个“SharedPreferences”文件而不指定每个单独的键呢? (有些键是由应用程序生成的,因此在用户输入其数据之前,我甚至不知道它们是否在使用中)。
我想知道是否有一种方法可以告诉“BackupHelper”类备份整个“SharedPreferences”文件?