Я внедрил Google и Facebook Логин в моем приложении для Android. Может ли кто-нибудь рассказать мне , как сохранить данные пользователя в приложении, используя общие предпочтения для этого же?Хранение данных для входа пользователя в андроид-студию
ответ
Запись в общей Preferences
Для записи в общий файл настроек, создать SharedPreferences.Editor по телефону Редактировать() на ваших общих опциях.
Передайте ключи и значения, которые вы хотите написать, такими методами, как putInt()
и putString()
. Затем вызовите commit()
, чтобы сохранить изменения. Например:
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(getString(R.string.saved_high_score), newHighScore);
editor.commit();
Чтения из общей Preferences
для извлечения значения из общего предпочтения файла, вызов методы, такие как getInt()
и getString()
, обеспечивая ключ для значения, которое необходимо, и, необязательно, по умолчанию значение для возврата, если ключ отсутствует. Например:
SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
int defaultValue = getResources().getInteger(R.string.saved_high_score_default);
long highScore = sharedPref.getInt(getString(R.string.saved_high_score), defaultValue);
пример проверки Android Shared preferences example.
Вы можете SharedPreferences хранить его и проверить о регистрации событий пользователя или нет:
private void saveUser(Users user) {
SharedPreferences preferences = getApplicationContext().getSharedPreferences("loginPref", MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("userId", user.getUserId());
editor.putString("userName", user.getUserName());// or put anything you want in this with String type
editor.putString("registration_id", user.getRegistrationId());
editor.apply();
}
Вы должны использовать editor.apply()
чем commit()
потому apply()
будет работать в вашем фоновом потоке и не делают никаких conflit об этом и главный нить.
Тогда вы можете получить значения из него, как это:
SharedPreferences preferences = getApplicationContext().getSharedPreferences("loginPref", MODE_PRIVATE);
int id = preferences.getInt("userId", 0);// 0 is default values
Значение настройки в Shared
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("name", "raks");
editor.putInt("idName", 1);
editor.commit();
Fetching значение из Shared
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
String name = prefs.getString("name", "No name defined");//"No name defined" is the default value.
int idName = prefs.getInt("idName", 0); //0 is the default value.
Здесь MY_PREFS_NAME Ваше имя файла
Использование Shared Предпочтение –
Использование общих предпочтений вы можете хранить его видеть это http://www.tutorialspoint.com/android/android_shared_preferences.htm. –
Как реализовать общие предпочтения? – PersianBlue