如何存储Firebase Auth用户'设备上的凭据可以在以后快速切换帐户?

时间:2018-02-01 21:01:22

标签: android firebase authentication firebase-authentication

我想实现UX,可以在以前签名的Firebase Auth用户之间快速切换,例如来自谷歌应用程序的导航抽屉:

Account switcher

问题是Firebase文档和示例只实现"登录 - 注销"流量,切换用户需要首先退出然后重新输入密码/重复授权流程与Facebook等,而不是只需一次点击切换。 Google主张Smart Lock,但它只对电子邮件和Google身份验证提供商有利,而且通常不是我寻求的用户体验。

存储这些用户及其凭据的正确方法是什么?该解决方案必须支持通过任何支持的提供商进行身份验证的用户,例如电子邮件/密码,Google,Facebook等。

由于使用任一方法进行身份验证都会导致获得AuthCredential个对象,因此问题可能归结为如何在设备上安全地存储这些对象,以及它们是否可以在以后重用。

1 个答案:

答案 0 :(得分:1)

请不要在设备上存储凭据。目前最好的方法是初始化多个Firebase应用程序实例并保留这些应用程序的数组。您可以在每个应用上登录用户。

请参阅initializeApp API。

然后,您可以通过以下方式访问App的Auth实例:FirebaseAuth.getInstance(firebaseAppInstance)