gpt4 book ai didi

java - 在不使用注销按钮的情况下终止Android应用程序时注销和 session 为假

转载 作者:搜寻专家 更新时间:2023-11-01 09:36:44 26 4
gpt4 key购买 nike

我想在不使用注销按钮的情况下注销和 session false 在终止 android 应用程序

当用户没有点击注销按钮时,Android 应用程序终止,我想注销并终止当前 session 。请问这是怎么实现的?

这是我的类(class)

    public class Session {
SharedPreferences preferences;
SharedPreferences.Editor editor;
Context ctx;

public Session(Context ctx) {
this.ctx = ctx;
preferences = ctx.getSharedPreferences("Novel Traveller",Context.MODE_PRIVATE);
editor =preferences.edit();
}

public void setLoggedin(boolean loggedin){
editor.putBoolean("Logged In mode",loggedin);
editor.commit();

}

public boolean loggedIn(){
return preferences.getBoolean("Logged In mode",false);
}
}

这是主要 Activity

    enter code here

public class MainActivity extends AppCompatActivity {
private Button btnLogout;
private Session session;

public static final String NOTE_ID_EXTAR = "com.text.traveller.novel_traveller_application.Note Identifier";
public static final String NOTE_TITLE_EXTAR = "com.text.traveller.novel_traveller_application.Note Title";
public static final String NOTE_MESSAGE_EXTAR = "com.text.traveller.novel_traveller_application.Note Message";
public static final String NOTE_CATEGORY_EXTAR = "com.text.traveller.novel_traveller_application.Note Category";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnLogout =(Button)findViewById(R.id.btnLogout);
session = new Session(this);
if(!session.loggedIn()){
logout();
}
btnLogout = (Button)findViewById(R.id.btnLogout);
btnLogout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
logout();
}
});
}
private void logout(){
session.setLoggedin(false);
finish();
startActivity(new Intent(MainActivity.this,loginActivity.class));
}
}

最佳答案

在我的 session 类中创建注销方法,例如:

 public void logout() {
SharedPreferences.Editor editor = getSharedPreferences().edit();
editor.clear();
editor.apply();
}

并在您的 Activity 中覆盖 onStop() 方法,然后只写:

@Override
protected void onStop() {
super.onStop();
session.setLoggedin(false);
session.logout();
}

关于java - 在不使用注销按钮的情况下终止Android应用程序时注销和 session 为假,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42523159/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com