2011-01-13 4 views
3

Es gibt einige Apps, die eine Anmeldung erfordern. Kann ich wissen, wie die App Benutzersitzung auf Android verwalten? Wenn sich der Nutzer zum Beispiel bei der App angemeldet hat, wird er beim nächsten Start der App direkt zur Startseite anstatt zur Anmeldeseite weitergeleitet. Wenn der Benutzer die App zum ersten Mal oder vor dem Anmelden startet, startet die App mit der Anmeldeseite. Kann phonegap damit umgehen? Vielen Dank.App für Android-App

Antwort

3

Je nachdem, welche Version von Android Sie ausrichten und welche Version von PhoneGap Sie ausführen, sollten Sie einen der integrierten Offline-Speichermechanismen verwenden, die im Browser verfügbar sind. Dazu gehören localStorage und WebKitSQLite.

Es gibt auch eine fantastische Open-Source-Bibliothek, die einen spezifischen Offline-Speichermechanismus abstrahiert, austauschbare zugrunde liegende Speicheradapter ermöglicht und eine einzige einheitliche Schlüssel/Wert-Schnittstelle bietet. Die Bibliothek heißt Lawnchair - check it out!

So unter Last, würden Sie Lawnchair instanziiert und sehen, ob die gespeicherten Anwenderparameter sind:

function onLoad() { 
    myStore = new Lawnchair(); 
    myStore.get('login', function(i) { 
     if (i == null) { 
      // user did not login before, no saved credentials. 
     } else { 
      // user DID login, we can now auto-login for the user. 
     } 
    }); 
} 

Zusätzlich nach einer erfolgreichen manuellen Anmeldung können Sie die Anmeldeinformationen speichern, um lawnchair, dass sie zur Verfügung stehen werden beim nächsten Mal Ihre PhoneGap App lädt und prüft, ob ihre Existenz:

function login(username, password) { 
    /* 
    * Do the login stuff here 
    */ 
    if (/* login was successful */) { 
     myStore.save({key:'login',value:{username:username, password:password}}); 
    } else { 
     alert('Could not log you in!'); 
    } 
} 

das wichtigste Bit zwischen den beiden Teile des Codes Sie hier sehen, ist der erste Parameter an die get()-Funktion und die key Eigenschaft an das Objekt übergeben an die save() Funktion. Beide müssen übereinstimmen, um das gleiche Objekt abzurufen.

Hoffe, dass hilft!

-1

Ich weiß nicht, was Phonegap ist, aber ich denke, in der Regel speichern Apps einfach das Login irgendwo in shared preference s. Alles, was Sie brauchen, ist, beim Start zu überprüfen, ob es bestimmte Präferenzen gibt. Wenn es keine gibt, sollte die Login-Seite angezeigt werden.

0

Sie können es in den Einstellungen speichern. Hier ist, wie

SharedPreferences settings = .getSharedPreferences("some_key, MODE_PRIVATE); 
     SharedPreferences.Editor editor = settings.edit(); 
     editor.putString("token", "123456"); 
     editor.commit(); 

Nächste Mal die App startet können Sie überprüfen, ob dies existiert. Hoffe, es hilft