您好我尝试构建一个应用程序,但是当我退出应用程序时出现下一个错误,我的应用程序使用登录用户,但是当按logout向我显示时:
错误
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));
}
答案 0 :(得分:0)
这是因为您尝试使用mCtx
启动活动,这是一个非活动的上下文。您需要使用logout
方法所在的Activity,如下所示:
public void logout() {
...
startActivity(new Intent(this, LoginActivity.class));
// or use YourActivity.this instead of this
}