Ich baue eine App, wo ich eine Option für die Anmeldung habe. Ich mache das, wenn Token vorhanden sind, dann Benutzer direkt zur Hauptaktivität gehen. Und das ist in Ordnung, aber wenn ich auf den LogOut-Button klicke, schickt es mich wieder auf die Seite wo LogOut Button ist, anstatt mich zur LogIn-Aktivität zu schicken. Warum das? Mein MainActivity:Meine LogOut-Schaltfläche funktioniert nicht
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SharedPreferences shf = getApplicationContext().getSharedPreferences("Token pref", MODE_PRIVATE);
String strPref = shf.getString("token", null);
if(strPref == null) {
Intent intent = new Intent(this, LoginActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}
viewToken = (TextView)findViewById(R.id.tokenView);
String data = getIntent().getStringExtra("result");
initializeInjector();
initialize();
}
@Override
protected void onResume() {
Log.d("OnResume", "Ovo je onResume");
SharedPreferences shf = getApplicationContext().getSharedPreferences("Token pref", MODE_PRIVATE);
String strPref = shf.getString("token", null);
if(strPref == null) {
Intent intent = new Intent(this, LoginActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}
super.onResume();
}
@Override
protected void onDestroy() {
super.onDestroy();
finish();
}
buttonOk = (Button)view.findViewById(R.id.buttonOk);
buttonOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SharedPreferences sharedPreferences = getActivity().getSharedPreferences("Token Prefs", Context.MODE_PRIVATE);
sharedPreferences.edit().remove("token").commit();
Intent intent = new Intent(context, LoginActivity.class);
intent.putExtra("key", "value");
startActivity(intent);
getActivity().finish();
}
});
Das ist meine LogIn Aktivität:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("onCreateLogIn", "Ovo je onCreateLogIna");
setContentView(R.layout.activity_login);
SharedPreferences shf = getSharedPreferences("Token pref", MODE_PRIVATE);
String strPref = shf.getString("token", null);
if(strPref != null) {
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}
Das ButtonOK in Haupttätigkeit ist die Schaltfläche zum Abmelden.
Was mache ich falsch?
Was ist View in Ihrer Hauptaktivität? –
Das ist Inflanter, der mich an das WrongUSerFragment – Atenica
sendet Es ist nicht klar, welche Schaltfläche ist die Schaltfläche Abmelden. Sie sollten Ihre Variablen vorzugsweise so aktualisieren, dass sie sich abmelden. –