Подтвердить что ты не робот

Android SharedPreferences, как сохранить простую переменную int

Я пытаюсь в течение последнего часа сохранить целое число в приложении для Android. Я читал, что это можно сделать с помощью SharedPreferences. Однако я не понимаю, почему это кажется настолько запутанным для этого.

Как я могу просто сохранить переменную int? И затем, когда я запустил приложение снова, как я могу снова взаимодействовать с этой переменной?

4b9b3361

Ответ 1

SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
editor.putInt("your_int_key", yourIntValue);
editor.commit();

вы можете получить его как:

 SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
 int myIntValue = sp.getInt("your_int_key", -1);

Интерфейс SharedPreference предоставляет вам доступ к XML файлу и простой способ его изменения через свой редактор. Файл хранится в /data/data/com.your.package/shared_prefs/, и вы можете получить к нему доступ onlu через этот SharedPreference API

Ответ 2

public void SaveInt(String key, int value){
       sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
       SharedPreferences.Editor editor = sharedPreferences.edit();
       editor.putInt(key, value);
       editor.commit();
}
public void LoadInt(){
       sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
       savedValue = sharedPreferences.getInt("key", 0);
}

Если вы хотите сохранить переменную где-то, вам нужно написать SaveInt ( "ключ", 5); При этом вы сохраните значение 5, а первое значение по умолчанию - 0. Если вы хотите загрузить его и использовать в другом действии, вы должны написать оба этих метода и вызвать LoadInt(); где вам нужна переменная. Сохраненное значение Value является предопределенным целым числом (это нужно объявлять везде, где вы хотели бы использовать сохраненную переменную)

Ответ 3

Это пример установки логических настроек. Вы также можете пойти с Integer.

SharedPreferences prefs = PreferenceManager
                    .getDefaultSharedPreferences(this);
            if (!prefs.getBoolean("firstTime", false)) {

                SharedPreferences.Editor editor = prefs.edit();
                editor.putBoolean("firstTime", true);
                editor.commit();
            }

Надеюсь, это может быть полезно.