Подтвердить что ты не робот

Сохранение информации о пользователе в настройках приложения

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

Итак, где эта информация должна быть сохранена? Я знаю, что у каждого приложения есть настройки, поэтому должна быть эта информация? Может быть, кто-то может дать мне больше информации о том, что и как это делается.

Спасибо.

Я нашел этот пост: Каков наиболее подходящий способ хранения пользовательских настроек в приложении для Android

Я считаю, что мой вопрос повторялся. Но было бы неплохо, если бы у вас было что-то, чтобы поделиться больше.

4b9b3361

Ответ 1

Прежде всего сохраните информацию пользователя, такую ​​как uname и password, в SharedPreferences с этим кодом.

SharedPreferences settings = getSharedPreferences("UserInfo", 0);
SharedPreferences.Editor editor = settings.edit();
editor.putString("Username",txtUname.getText().toString());
editor.putString("Password",txtPWD.getText().toString());
editor.commit();

а затем получить SharedPreferences из ниже кода

SharedPreferences settings = getSharedPreferences("UserInfo", 0);
txtUname.setText(settings.getString("Username", "").toString());
txtPWD.setText(settings.getString("Password", "").toString());

Ответ 2

Ответ Использовать класс приложения или общие настройки

Я предполагаю, что вы можете легко найти пример Application Class, SharedPreferences и SQLite Database

Итак, я упоминаю, где я могу использовать какие опции

Application Class

Когда я получил что-либо (var, array, list, objects) для хранения только для LifeTime для приложения... и по мере приближения (для Android Force Close) я использую класс приложения.

SharedPreferences

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

SQLite Database

Когда в формате записи (Row-Column) есть объемные данные, я использовал его для хранения в базе данных, чтобы он стал легко хранить, извлекать и манипулировать.

Ответ 3

Вы можете использовать SharedPreferences для этого.

Некоторые коды из ссылок (взяты из документации):

public class Calc extends Activity {
    public static final String PREFS_NAME = "MyPrefsFile";

    @Override
    protected void onCreate(Bundle state){
       super.onCreate(state);
       . . .

       // Restore preferences
       SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
       boolean silent = settings.getBoolean("silentMode", false);
       setSilent(silent);
    }

    @Override
    protected void onStop(){
       super.onStop();

      // We need an Editor object to make preference changes.
      // All objects are from android.context.Context
      SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
      SharedPreferences.Editor editor = settings.edit();
      editor.putBoolean("silentMode", mSilentMode);

      // Commit the edits!
      editor.commit();
    }
}

Ответ 4

если пользователь очистит данные приложения от установки → Диспетчер приложений → ваше приложение → очистить данные

тогда все данные, сохраненные в общих настройках, будут удалены.