Android 2.2数据备份:如何备份DefaultSharedPreferences?

Pet*_*rdk 8 backup android sharedpreferences android-backup-service

我正在实施BackupAgentHelperAndroid OS 2.2中的新功能.

要使其工作,您需要提供SharedPreferences要备份的名称:

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);
}
}
Run Code Online (Sandbox Code Playgroud)

问题是我PreferenceManager.getDefaultSharedPreferences()在我的应用程序中使用该方法来获取默认的共享首选项实例.现在我需要提供该文件的名称.我该怎么知道这是什么名字?

(为什么他们不提供只做DefaultSharedPreferences备份的助手?)

Pet*_*rdk 16

它看起来像是被称为 "packagename_preferences"

  • 是的,如果您浏览/ data/data/<package>/shared_prefs,您可以看到用于SharedPreferences的文件.您需要的名称确实是<packagename> _preferences.另外,我创建了一个问题,要求为"默认"SharedPreferences提供更方便的方法:http://code.google.com/p/android/issues/detail?id = 11922.(我同意你的意见,应该在那里.) (2认同)