Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何存储Firebase Auth用户';设备上的凭据,以便以后快速切换帐户?_Android_Firebase_Authentication_Firebase Authentication - Fatal编程技术网

Android 如何存储Firebase Auth用户';设备上的凭据,以便以后快速切换帐户?

Android 如何存储Firebase Auth用户';设备上的凭据,以便以后快速切换帐户?,android,firebase,authentication,firebase-authentication,Android,Firebase,Authentication,Firebase Authentication,我想实现UX,在其中可以在以前登录的Firebase Auth用户之间快速切换,例如从导航抽屉(如Google apps)切换: 问题在于Firebase文档和示例仅实现“登录-注销”流程,在该流程中,切换用户需要先注销,然后使用Facebook等重新输入密码/重复验证流,而不是只需点击一次即可切换。谷歌提倡智能锁,但它只适用于电子邮件和谷歌认证提供商,通常不是我正在寻找的用户体验 存储这些用户及其凭据的正确方式是什么?解决方案必须支持通过任何受支持的提供商(如电子邮件/密码、谷歌、Faceb

我想实现UX,在其中可以在以前登录的Firebase Auth用户之间快速切换,例如从导航抽屉(如Google apps)切换:

问题在于Firebase文档和示例仅实现“登录-注销”流程,在该流程中,切换用户需要先注销,然后使用Facebook等重新输入密码/重复验证流,而不是只需点击一次即可切换。谷歌提倡智能锁,但它只适用于电子邮件和谷歌认证提供商,通常不是我正在寻找的用户体验

存储这些用户及其凭据的正确方式是什么?解决方案必须支持通过任何受支持的提供商(如电子邮件/密码、谷歌、Facebook等)进行身份验证的用户


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

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

请参阅API


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

这是一个有趣的想法。不过,设置和管理多个FirebaseApp实例听起来开销很大。我希望他们在将来以更精益的方式实现这个用例。再等几天等待其他答案,如果没有更好的建议,则将此答案标记为已接受。