Firebase 用户会为已注册的用户返回空元数据



我一直在使用Firebase对应用中的用户进行身份验证。 当用户在注册后返回到应用时,FirebaseAuth.getInstance().getCurrentUser().getMetadata()返回null。当用户首次注册时,它可以完美运行,但返回用户会返回null

来自Firebase团队的Malcolm。

感谢您指出这一点。这目前是Android SDK持久性中的一个错误。我们将继续尽快解决此问题 - 密切关注即将发布的发行说明以了解何时解决。

同时,您可以使用的解决方法是写入应用程序的 SharedPreferences,以便在注册时存储这些属性,并在应用中的其他位置需要这些首选项时读取这些属性。 希望这有帮助!

遇到了同样的问题,getMetadata() 返回 null。

我使用 Firebase Assistant 向导在 Android Studio 中添加了 Firebase 支持。 我只是无法让FirebaseUser.getMetadata()工作。

然后我更新了build.gradle(模块:应用程序)依赖项,如下所示:

实现 'com.google.firebase:firebase-auth:16.0.3'

实现 'com.google.firebase:firebase-core:16.0.1'

(这些是撰写本文时的最新版本。 当您阅读本文时,可能还有更新的版本)

我发现我仍然得到 null,但后来我去添加一个新用户,突然它开始工作。我已经删除了所有现有帐户并创建了新帐户 - 不知道这是否有所不同。 但它现在似乎正在起作用。

因此 - 更新依赖项并进行 gradle 同步可能会解决您的问题,至少对于新用户而言。

Android Studio 中的 Firebase Assistant 可能需要修改以反映最新版本。

(仍然担心这是完全可靠的..)

最新更新