Какое имя файла используется по умолчанию для общих настроек?

Службе резервного копирования Android требуется имя файла для резервного копирования общих настроек:

public static final String PREFS = "PrefFile";    
SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, PREFS);

Понятно, что использовать, если при создании настроек задано имя файла, например

public static final String PREF_FILE_NAME = "PrefFile";
SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

Но я использую общие настройки по умолчанию:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);

Что я должен пройти как PREFS значение для SharedPreferencesBackupHelper?

3 ответа

Решение
private static String getDefaultSharedPreferencesName(Context context) {
    return context.getPackageName() + "_preferences";
}

увидеть название вашего пакета в AndroidManifest.xml

Исходный код PackageName основан на контексте, который вы передаете.

private static String getDefaultSharedPreferencesName(Context context) {
    return context.getPackageName() + "_preferences";
}

Имя файла настроек по умолчанию - это имя класса вызывающей деятельности.

https://developer.android.com/reference/android/app/Activity.html

Другие вопросы по тегам