Постоянные переменные

183
24 февраля 2018, 21:21

Всем доброго времени суток. Изучаю разработку Android приложений и появился вопрос.

К примеру у меня есть форма авторизации где пользователь вбивает свой логин и пароль.

Я хочу сохранить то что вбил пользователь в переменных. Но мне нужны такие переменные что бы они хранили свое значение на протяжении всего существования приложения либо до тех пор пока пользователь не сменит их значение. Подскажите в какую сторону смотреть ? Может есть у кого пример ??

Answer 1

Для таких целей созданы SharedPreferences.

Объявите глобально:

SharedPreferences preferences;

Определите переменную, которая будет хранить данные приложения в корневой папке приложения в файле variables.xml

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    preferences = getSharedPreferences("variables", Context.MODE_PRIVATE);
}

Следующий код будет сохранять данные в preferences. Нужно создать Editor для preferences, с помощью которого мы сможем изменять сохранённые данные:

SharedPreferences.Editor editor = preferences.edit();
editor.putString("name","Ivan");
editor.putString("password","123456");
editor.apply();

Обращаться к сохранённым в устройстве переменным можно так:

String name= preferences.getString("name", "default");
String password= preferences.getString("password", "default");

Переменные получат значение default, если они ранее не были сохранены в устройстве.

Надеюсь, хорошо объяснил. Если будут вопросы - пишите, не стесняйтесь =)

Answer 2

Используйте Android Account Manager, офф.доки. Пример реализации. P.S никогда не используйте шары или просто файлы для хранения паролей, токенов или приватных ключей(!!!). У гугла есть люди которые давно многое для нас придумали, используйте.

READ ALSO
Атрибут к дочернему элементу jQuery

Атрибут к дочернему элементу jQuery

Доброго времени сутокЧто нужно, если у label есть класс "active" то input в нутри него присвоить атрибут checked Попытался реализовать, но что то не то((

162
Как решить конфликт версий jquery

Как решить конфликт версий jquery

Есть плагин который с помощью shortcode загружается на страницу и он использует свою версию jquery а тема использует свою , в итоге плагин не работает...

214
фильтр по нескольким параметрам

фильтр по нескольким параметрам

Как изменить код так что бы он проверял и фильтровал значения не только по полностью совпадающим категориям с маркерами, а добавлял маркерыНа...

191