android - 如何将 Firebase Auth 用户的凭据存储在设备上以便以后快速切换帐户?

标签 android firebase authentication firebase-authentication

我想实现可以在之前登录的 Firebase Auth 用户之间快速切换的用户体验,例如从像 Google 应用程序一样的抽屉导航:

Account switcher

问题是 Firebase 文档和示例仅实现“登录 - 注销”流程,其中切换用户需要先注销然后重新输入密码/重复使用 Facebook 等的身份验证流程,而不是仅仅切换轻轻一按。 Google 提倡使用 Smart Lock,但它仅适用于电子邮件和 Google 身份验证提供商,通常不是我所寻求的用户体验。

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

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

最佳答案

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

引用initializeApp应用程序接口(interface)。

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

关于android - 如何将 Firebase Auth 用户的凭据存储在设备上以便以后快速切换帐户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48571631/

相关文章:

java - mapView 弃用方法 getZoomControls?

java - 使用手机登录 Firebase 返回空指针

javascript - 警报(消息)返回空字符串

php - 一次登录多个网站的脚本。 CURL 和 PHP 都试过了。

android - 没有操作栏的抽屉导航,android

android - 避免在 Android 中注册重复的广播接收器

firebase - Flutter Firebase已弃用的api,无法在发行版中构建Appbundle

authentication - Alexa 是否/可以替换其为链接用户生成的 UserId?

android - 我的应用程序加载时如何避免 android 黑屏?

java - 检索Firebase数据库数据并列出