Как я могу сохранить конфигурацию моего приложения без использования базы данных ??? (используя простой текстовый файл) - PullRequest
5 голосов
/ 18 ноября 2010

мне нужно сохранить простое поле для настройки моего приложения, потому что я не буду использовать базу данных (это всего лишь поле ...), мне нужно сохранять значение true или false для этого поля в файле и каждый раз часть моего приложения хочет проверить, правда ли это, они должны проверить этот текстовый файл, а не открывать соединение с базой данных

мне нужно сохранить конфигурацию навсегда ... я имею в виду, что когда я выхожу из своего приложения и, например, я выключаю свое устройство Android, когда я снова запускаю свое устройство и запускаю свое приложение, конфигурация должна быть спасенным

это возможно? как мне это сделать? я не могу найти информацию об этом

РЕДАКТИРОВАТЬ: у меня проблемы с первым ответом ... этот код на моем методе oncreate:

static SharedPreferences settings;
static SharedPreferences.Editor configEditor;
settings = this.getPreferences(MODE_WORLD_WRITEABLE);

    if (settings.getBoolean("showMeCheckBox", true)) 
     showMeCheckBox.setChecked(true);
    else 
     showMeCheckBox.setChecked(false);

applyButton.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                // Perform action on clicks
             if (showMeCheckBox.isChecked()) {
                 configEditor.putBoolean("showMeCheckBox", true); 
                } else {
                 configEditor.putBoolean("showMeCheckBox", false);
                }

            }
});

хорошо, но это не работает ... всегда выбрано ... всегда верно, как и значение по умолчанию ... не имеет значения, если я его отмечал или не проверял ....: S

1 Ответ

9 голосов
/ 18 ноября 2010

Я предлагаю использовать не текстовый файл, а Редактор предпочтений.

static SharedPreferences settings;
static SharedPreferences.Editor editor;
settings = this.getPreferences(MODE_WORLD_WRITEABLE);
editor = settings.edit();
//store value
editor.putString("Preference_name_1", "1");
//get value
//eill return "0" if preference not exists, else return stored value
String val = settings.getString("Preference_name_1", "0");

Редактировать: вам нужно инициализировать configEditor и после установки значения вы должны зафиксировать

editor = settings.edit();
editor.putBoolean("name",true);
editor.commit();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...