Um dies zu erreichen mit SharedPreferences
Sie könnte so etwas wie tun:
Fügen Sie folgende in jeder Klasse Sie mehr sehen, passen. Nehmen wir an, Sie fügen dies in die Klasse Example
ein.
//Give your SharedPreferences file a name and save it to a static variable
public static final String PREFS_NAME = "MyPrefsFile";
Nun in der Methode, die, wenn der Benutzer in erfolgreich anmeldet auswertet, gehen Sie wie folgt. Beachten Sie die Klasse Example
, die Sie entsprechend Ihrem Code ändern müssen. Schließlich
//User has successfully logged in, save this information
// We need an Editor object to make preference changes.
SharedPreferences settings = getSharedPreferences(Example.PREFS_NAME, 0); // 0 - for private mode
SharedPreferences.Editor editor = settings.edit();
//Set "hasLoggedIn" to true
editor.putBoolean("hasLoggedIn", true);
// Commit the edits!
editor.commit();
, , wenn die Anwendung startet Sie jetzt auswerten kann, wenn der Benutzer bereits angemeldet ist oder nicht hat. Beachten Sie weiterhin die Klasse Example
, die Sie ändern müssen.
SharedPreferences settings = getSharedPreferences(Example.PREFS_NAME, 0);
//Get "hasLoggedIn" value. If the value doesn't exist yet false is returned
boolean hasLoggedIn = settings.getBoolean("hasLoggedIn", false);
if(hasLoggedIn)
{
//Go directly to main activity.
}
this helps
EDIT: Um den Benutzer von der Nutzung der Zurück-Taste zu verhindern zur Login-Aktivität, die Sie finish()
gehen zurück, um die Aktivität nach einem neuen zu starten.
folgender Code genommen von Forwarding.java | Android developers
// Here we start the next activity, and then call finish()
// so that our own will stop running and be removed from the
// history stack
Intent intent = new Intent();
intent.setClass(Forwarding.this, ForwardTarget.class);
startActivity(intent);
Example.this.finish();
Also, was haben Sie in Ihrem Code zu tun ist, um die finish()
Funktion auf der Login-Aktivität zu nennen, nach startActivity()
Aufruf.
Siehe auch: Removing an activity from the history stack
Der Link, den Sie mit uns teilen wollten, war fehlerhaft. Bitte bearbeiten Sie Ihre Frage, um den richtigen Link hinzuzufügen. –