在没有互联网连接的情况下处理Firebase身份验证(Android)

7
我正在使用Firebase开发我的第一个应用程序,目前在登录方面遇到了一些问题。
目前为止,我已经实现了以下功能:
- 用户可以使用他们的Google账号登录 - 用户可以匿名登录 - 使用Firebase身份验证中的UID作为唯一键,在Firebase实时数据库中存储用户数据
问题 当用户首次使用应用程序时,如果没有互联网连接,则无法创建帐户(至少我认为是这样)。
问题解决 如何处理这种情况?是否有可能在没有互联网连接的情况下获取唯一键?是否应该要求用户创建互联网连接?还有其他可能性吗?
2个回答

6
创建Firebase身份验证用户帐户需要连接到Google服务器。不幸的是,即使您使用匿名身份验证,这也适用。
因此,目前(在Firebase身份验证中)唯一的选择是让用户连接到互联网以完成注册。

如果没有网络连接,是否可以使用现有用户帐户进行简单的Firebase身份验证? - rsteilberg
如果用户没有连接到互联网,就没有办法对其进行身份验证。这将需要设备包含所有可能用户凭证的知识。 - Frank van Puffelen
@FrankvanPuffelen,只是确认一下,您不能使用“凭据 API”在设备上保存用户登录信息,这仍然是正确的吗? - Joel Robinson-Johnson

1
您只能在用户先前登录或注册并将其再次保存在FirebaseAuth.instance中时,才能离线查看用户是否已进行身份验证,但对于每个请求,他都需要连接。在我的情况下,我正在使用Flutter:
var user = await FirebaseAuth.instance.currentUser();
这种离线日志状态使您无需每次用户离线并打开应用程序时都呈现登录或注册页面。

1
感谢澄清。 - Sebastian Gomes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接