使用Firebase身份验证反应原生

Tyl*_*nis 10 firebase react-native

我知道使用React Native进行Twitter/Facebook Firebase身份验证会引发错误,因为很明显这不是开启新身份验证窗口的正确环境.此外,电子邮件/密码验证也应该失败,因为它依赖于React Native不支持的LocalStorage.是在React Native中实现任何类型的Firebase身份验证以创建Swift/ObjC桥接的最佳方法,然后真的只使用Swift/ObjC Firebase身份验证库吗?如果是这样,有没有人有这样做的例子?

Mic*_*uer 16

更新:从Firebase 3.x开始,Firebase身份验证将在React Native应用中正确保留用户.

啊,我没有意识到React Native没有填充本地存储.因此,如果我理解您的问题,使用Firebase的电子邮件/密码验证可以在React Native中正常工作,除非它不会在应用启动时保留,因此用户必须每次都登录.

一种可能的解决方案是自己手动持久化身份验证令牌.就像是:

  1. 像往常一样调用authWithPassword(...).
  2. 在onComplete处理程序中,检索authData.authToken并将其存储在本地(例如,使用AsyncStorage).
  3. 在下一个应用程序启动时,从存储中检索身份验证令牌并调用authWithCustomToken(authToken,...).

我们将考虑让Firebase自动执行此操作,但这样做有点棘手,而不会影响Firebase的其他消费者.我已将此添加到我们的内部错误数据库中,我们将看到我们可以提出的内容.当我们有解决方案时,我们会更新这个答案.谢谢!