Как использовать getSharedPreferences в android
У меня есть приложение, в котором я должен реализовать действие "Вход". У меня есть следующие компоненты:
- Имя пользователя EditText
- Пароль EditText
- Вход в систему
- Кнопка Отмена
Я хочу, чтобы мое приложение запоминало данные входа пользователя после входа пользователя в систему до тех пор, пока пользователь не нажмет кнопку "выйти из системы". Я не использую настройки в своем xml.
Как мне получить getSharedPreferences (String name, int mode) для работы в моем приложении?
Ответы
Ответ 1
SharedPreferences userDetails = context.getSharedPreferences("userdetails", MODE_PRIVATE);
Editor edit = userDetails.edit();
edit.clear();
edit.putString("username", txtUname.getText().toString().trim());
edit.putString("password", txtPass.getText().toString().trim());
edit.commit();
Toast.makeText(context, "Login details are saved..", 3000).show();
ИЗМЕНИТЬ
таким образом вы можете выбрать предпочтение
SharedPreferences userDetails = context.getSharedPreferences("userdetails", MODE_PRIVATE);
String Uname = userDetails.getString("username", "");
String pass = userDetails.getString("password", "");
Ответ 2
//Set Preference
SharedPreferences myPrefs = getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor;
prefsEditor = myPrefs.edit();
//strVersionName->Any value to be stored
prefsEditor.putString("STOREDVALUE", strVersionName);
prefsEditor.commit();
//Get Preferenece
SharedPreferences myPrefs;
myPrefs = getSharedPreferences("myPrefs", MODE_WORLD_READABLE);
String StoredValue=myPrefs.getString("STOREDVALUE", "");
Попробуйте это.
Ответ 3
Прочитав много, только это сработало:
В классе для установки общих настроек:
SharedPreferences userDetails = getApplicationContext().getSharedPreferences("test", MODE_PRIVATE);
SharedPreferences.Editor edit = userDetails.edit();
edit.clear();
edit.putString("test1", "1");
edit.putString("test2", "2");
edit.commit();
В AlarmReciever:
SharedPreferences userDetails = context.getSharedPreferences("test", Context.MODE_PRIVATE);
String test1 = userDetails.getString("test1", "");
String test2 = userDetails.getString("test2", "");