2 回答

TA貢獻(xiàn)1801條經(jīng)驗 獲得超16個贊
您可以像這樣創(chuàng)建共享首選項類:-
public class AppPrefrences {
private static SharedPreferences mPrefs;
private static SharedPreferences.Editor mPrefsEditor;
public static boolean isUserLoggedOut(Context ctx) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx);
return mPrefs.getBoolean("id_logged_in", true);
}
public static void setUserLoggedOut(Context ctx, Boolean value) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx);
mPrefsEditor = mPrefs.edit();
mPrefsEditor.putBoolean("id_logged_in", value);
mPrefsEditor.commit();
}
public static String getUserName(Context ctx) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx);
return mPrefs.getString("userName", "");
}
public static void setUserName(Context ctx, String value) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx);
mPrefsEditor = mPrefs.edit();
mPrefsEditor.putString("userName", value);
mPrefsEditor.commit();
}
public static void clearAllPreferences(Context ctx) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(ctx);
mPrefsEditor = mPrefs.edit();
mPrefsEditor.clear();
mPrefsEditor.commit();
}
}
當(dāng)您登錄您的應(yīng)用程序時,請像這樣設(shè)置值:-
setUserLoggedOut(YourActivity.class, false);
并像這樣在啟動畫面上設(shè)置檢查:-
if (isUserLoggedOut(StartActivity.this)) {
startActivity(new Intent(StartActivity.this, LoginActivity.class));
finish();
} else {
startActivity(new Intent(StartActivity.this, MainActivity.class));
finish();
}

TA貢獻(xiàn)1797條經(jīng)驗 獲得超4個贊
You this approach create a SessionManager class
public class AppPrefrences {
private static SharedPreferences mPrefs;
private static SharedPreferences.Editor mPrefsEditor;
public AppPrefrences(Context context)
{
int PRIVATE_MODE = 0;
pref = context.getSharedPreferences("UserDetails", PRIVATE_MODE);
editor = pref.edit();
editor.apply();
}
public static boolean isUserLoggedOut() {
return mPrefs.getBoolean("id_logged_in", false);
}
public static void setUserLoggedOut(Boolean value) {
mPrefsEditor.putBoolean("id_logged_in", value);
mPrefsEditor.commit();
}
public static String getUserName() {
return mPrefs.getString("userName", "");
}
public static void setUserName(String value) {
mPrefsEditor.putString("userName", value);
mPrefsEditor.commit();
}
public static void clearAllPreferences()
{
mPrefsEditor.clear();
mPrefsEditor.commit();
}
}
Inside your activity
AppPrefrences sess = new AppPrefrences(this);
sess.setUserName("A");
添加回答
舉報