Android-如何将Firebase Uid保存到SharedReferences?
在用户登录并获取其uid后,如何将其uid保存到SharedReferences上,以便在整个项目中访问它? 这是我获取其uid的代码:Android-如何将Firebase Uid保存到SharedReferences?,android,firebase,firebase-authentication,android-sharedpreferences,Android,Firebase,Firebase Authentication,Android Sharedpreferences,在用户登录并获取其uid后,如何将其uid保存到SharedReferences上,以便在整个项目中访问它? 这是我获取其uid的代码: FirebaseAuth auth = FirebaseAuth.getInstance(); FirebaseAuth.AuthStateListener authListener = new FirebaseAuth.AuthStateListener() { @Override public void onAuthStateChanged
FirebaseAuth auth = FirebaseAuth.getInstance();
FirebaseAuth.AuthStateListener authListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
if (firebaseUser != null) {
String userId = firebaseUser.getUid();
String userEmail = firebaseUser.getEmail();
}
}
};
像这样试试
private SharedPreferences sharedPref;
FirebaseAuth auth = FirebaseAuth.getInstance();
FirebaseAuth.AuthStateListener authListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
if (firebaseUser != null) {
String userId = firebaseUser.getUid();
String userEmail = firebaseUser.getEmail();
sharedPref = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putString("firebasekey", userId);
editor.commit();
}
}
};
使用此代码将UID保存到
SharedReference
中
// for saving uid for shared preference
FirebaseAuth auth = FirebaseAuth.getInstance();
FirebaseAuth.AuthStateListener authListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser firebaseUser = firebaseAuth.getCurrentUser();
if (firebaseUser != null) {
String userId = firebaseUser.getUid();
String userEmail = firebaseUser.getEmail();
SharedPreferences sp = getSharedPreferences(PREFS_UID ,Context.MODE_PRIVATE);
sp.edit().putInt(Save_UID,userId ).commit();
}
}
};
// Retrieving id to any activity by calling this
SharedPreferences sp = getSharedPreferences(PREFS_UID,Context.MODE_PRIVATE);
int sc = sp.getInt(Save_UID,0);
像这样尝试:
在其他活动中检索:
sharedPref = getPreferences(MODE_PRIVATE);
String UserId = sharedPref.getString("firebasekey", "");
“firebasekey”后面的“”代表什么?它是字符串类型的默认值@MozySo我应该把什么值放在那里?它就像“键”,“值”。您可以输入任何值。我输入了值“0”,但当我引用UserId并将该文件保存到Firebase时,该文件不是UserId而是“0”?
sharedPref = getPreferences(MODE_PRIVATE);
String UserId = sharedPref.getString("firebasekey", "");