2017-12-16 7 views
0

Meine Anwendung hat drei Arten von Login 1.Normal Registrierung und Login mit Web-Service 2.Facebook Integration 3.Google Integration hat Was ich wissen muss, ist, wie man Sitzung mit drei Arten von login.I verwendet gemeinsame Präferenz für die normale Anmeldung und ich kann Sitzung mit mehreren Benutzern verwalten, aber Hilfe Sitzung für mit diesen drei ArtenWie Session in Android zu verwalten, wenn eine App mehrere Logins wie fb, Google und Web-Service-Login

+0

für Ihre Web-se rvice anmelden können Sie gemeinsam genutzte Einstellungen verwenden und für FB und Google dort eingebaute Funktionalität Sitzung in SDK zu erhalten –

Antwort

1

Sie können verwenden SharedPreferences und Gson wie unten:

public class Prefs { 

public static void putPref(String key, String value, Context context){ 
    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); 
    SharedPreferences.Editor editor = prefs.edit(); 
    editor.putString(key, value); 
    editor.commit(); 
} 

public static String getPref(String key, Context context) { 
    SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context); 
    return preferences.getString(key, null); 
} 
} 

fügen Sie diese zu Ihrer build.gradle:

compile 'com.google.code.gson:gson:1.7.2' 

in login (Aktivität oder Fragment):

Gson gson = new Gson(); 
User user = ...; //User Object specify your login type with enum or ... 
String json = gson.toJson(user); 

nach Laden Sie Ihren Benutzer

Prefs.putPref("user",json,your context); 

Ihren Benutzer

zu erhalten
String json = = Prefs.getPref("user",your context); 
User user = null; 
if(json != null) 
    user = gson.fromJson(json,User.class); 
Verwandte Themen