флаг FLAG_ACTIVITY_NEW_TASK ошибки - PullRequest
0 голосов
/ 02 мая 2018

Привет, я пытаюсь создать приложение, но у меня появляется следующая ошибка, когда я выхожу из приложения, мое приложение использует пользователей для входа в систему, но при нажатии выхода из системы показывает мне:

ошибка

android.util.AndroidRuntimeException: Calling startActivity() from 
outside of an Activity  context requires the FLAG_ACTIVITY_NEW_TASK
flag. Is this really what you want?

код выхода

public void logout() {
   SharedPreferences sharedPreferences = mCtx.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE);
   SharedPreferences.Editor editor = sharedPreferences.edit();
   editor.clear();
   editor.apply();
   mCtx.startActivity(new Intent(mCtx, LoginActivity.class));
}

1 Ответ

0 голосов
/ 02 мая 2018

Это потому, что вы пытаетесь запустить действие, используя mCtx, который является неактивным контекстом. Вам нужно использовать метод Activity, в котором находится метод logout, примерно так:

public void logout() {
  ...
  startActivity(new Intent(this, LoginActivity.class));
  // or use YourActivity.this instead of this
}
...