gpt4 book ai didi

firebase - 使用生成的匿名登录 ID 登录用户

转载 作者:行者123 更新时间:2023-12-02 22:14:28 24 4
gpt4 key购买 nike

我正在编写一个 Android 应用程序,我正在尝试让用户匿名登录,这样他们就不必经历任何类型的注册过程。我将他们的匿名用户 ID 存储在共享首选项中,当应用程序打开时,我尝试根据该用户 ID 登录他们。我试图找出执行此操作的正确方法,因为似乎没有只接受 UID 的身份验证函数。目前我使用 auth() 来实现,但我觉得这是不正确的。

这里是一些示例代码:

String userID = getUserID();

if(userID.equals("NOT_FOUND")) {
ref.authAnonymously(new Firebase.AuthResultHandler() {
@Override
public void onAuthenticated(AuthData authData) {
//successful authentication
//save auth data
SharedPreferences prefs = getSharedPreferences(
"USER_ID", Context.MODE_PRIVATE);
String id = authData.getUid();
prefs.edit().putString("USER_ID", id).commit();
}

@Override
public void onAuthenticationError(FirebaseError firebaseError) {
//unsuccessful authentication
}
});
} else {
ref.auth(userID, new Firebase.AuthListener() {
...

最佳答案

每次调用 FirebaseRef.authAnonymously(...) 时,您都会创建一个新的身份验证 session 。该方法只需要调用一次,之后用户将在页面刷新时进行身份验证。另请注意,重新启动应用程序后,您无需再次调用 FirebaseRef.auth(),因为该部分会自动为您处理。

如果您想检查用户当前的身份验证状态,并且在用户当前未经过身份验证的情况下创建新的身份验证 session ,请使用身份验证状态的同步访问器FirebaseRef.getAuth().

最后,一旦创建匿名身份验证 session ,就不能使用相同的 uid 创建新 session 。该 session 将一直存在,直到您预定义的 session 到期时间(在您的帐户仪表板中配置)或直到您的用户注销,之后该 uid 将永久停用。

关于firebase - 使用生成的匿名登录 ID 登录用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26720714/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com