Как сохранить сеанс входа пользователя? - PullRequest
3 голосов
/ 09 апреля 2010

У меня есть приложение, которое требует от пользователя регистрации. Я подключил приложение к PHP на своем сервере, чтобы выполнить логику регистрации / входа в систему, и поэтому это не проблема.

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

Итак, я хочу что-то вроде этого:

  • Первый раз, пользователь открывает приложение, регистрируется и входит в систему.
  • Сделайте что-нибудь с приложением и закройте его.
  • Снова откройте приложение, пользователь будет распознан, поэтому ему не нужно снова входить в систему.

Мне нужно только сохранить идентификатор и имя пользователя (оба извлекаются из БД в методе php входа в систему). Какой лучший способ сделать это ??

Я думал о том, чтобы сделать пользовательские настройки, сохранить данные в файлах или даже в локальной БД (sqlite). Есть предложения?

Ответы [ 2 ]

6 голосов
/ 09 апреля 2010

Да, предпочтения будут работать. В вашем onCreate():

mPrefs = PreferenceManager.getDefaultSharedPrefs(this);

И в какой-то функции, которая вызывается после входа пользователя в систему:

SharedPreferences.Editor edit = mPrefs.edit();
edit.putString("app_username", username);
edit.putInt("app_userid", userId);
edit.commit();
0 голосов
/ 28 апреля 2014

Используйте для этого общие предпочтения. попробуйте ниже код ....:

PreferenceManager pm = PreferenceManager.getDefaultSharedPrefs(this);
SharedPreferences.Editor edit = pm.edit();
edit.putString("user", username);
edit.putInt("pwd", password);
edit.commit();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...