Android получает проблему с общими настройками - PullRequest
0 голосов
/ 19 сентября 2011

Я использую SharedPreferences в своем приложении для хранения последнего идентификатора пользователя, который вошел в мое приложение, и я пытаюсь сделать это из неактивного класса, что вызывает у меня NullPointerException во втором строка кода:

Context mContext;
SharedPreferences lastUser = PreferenceManager.getDefaultSharedPreferences(mContext);
SharedPreferences.Editor editor = lastUser.edit();

Я пробовал все возможные варианты mContext:

  • Acticity.this.mContext;
  • this.mContext.getApplicationContext();
  • this.mContext;

но они не решили мою проблему. Кто-нибудь может дать мне какое-то решение, как избавиться от этой проблемы и как использовать Контекст статическим способом, не получая NullPointerException?

Ответы [ 4 ]

2 голосов
/ 19 сентября 2011

попробуйте

    SharedPreferences lastUser = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
    SharedPreferences.Editor editor = lastUser.edit();
2 голосов
/ 19 сентября 2011

Вы должны использовать контекст действия, которое вызывает этот метод.

2 голосов
/ 19 сентября 2011

Вы можете попробовать передать контекст активности через конструктор класса неактивности и использовать этот контекст для создания объекта SharedPreferences.

1 голос
/ 19 сентября 2011

Я думаю, что вы не инициализировали контекст не класса Activity, чтобы обойтись, обратитесь к этому Данные Android, сохраняемые во внутреннем хранилище NullPointerException

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...