问题
Android Backup Service requires a filename to backup shared preferences:
public static final String PREFS = "PrefFile";
SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, PREFS);
It is clear what to use if filename is given during preferences creation like
public static final String PREF_FILE_NAME = "PrefFile";
SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);
But I use default shared preferences:
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
What should I pass as PREFS
value to SharedPreferencesBackupHelper
?
回答1:
private static String getDefaultSharedPreferencesName(Context context) {
return context.getPackageName() + "_preferences";
}
see your package name in AndroidManifest.xml
回答2:
From the source code, The PackageName is based on the context that you pass in.
private static String getDefaultSharedPreferencesName(Context context) {
return context.getPackageName() + "_preferences";
}
回答3:
The default preference file's name is the calling activity's class name.
https://developer.android.com/reference/android/app/Activity.html#getPreferences(int)
来源:https://stackoverflow.com/questions/26675159/what-is-the-file-name-used-by-default-shared-preferences