如何在 Android 和 iOS 上的 Capacitor 应用中实现 Firebase 身份验证?

Wou*_*and 2 firebase reactjs firebase-authentication capacitor

我正在使用 Capacitor 创建我的 React web 应用程序的 Android 和 iOS 版本,现在我正在尝试在 Android 和 iOS 上运行 firebase 身份验证。

我已允许在应用程序内导航到所有域,并使用redirectFirebase 身份验证策略。我已经启用了所需的身份验证方法,它们在网络版本中运行良好。

问题:我只看到一个空白屏幕,而不是显示身份验证网站。

供参考:用于验证的代码:

const auth = firebase.auth()
const provider = new firebase.auth.GoogleAuthProvider()
auth.signInWithRedirect(provider)
Run Code Online (Sandbox Code Playgroud)

还有capacitor.config.json

{
  "appId": "APP_ID",
  "appName": "APP_NAME",
  "bundledWebRuntime": false,
  "npmClient": "yarn",
  "webDir": "build",
  "cordova": {},
  "server": {
    "hostname": "HOSTNAME_KNOWN_TO_FIREBASE",
    "allowNavigation": ["*"]
  },
  "android": {
    "allowMixedContent": true
  }
}
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?任何提示将非常感谢!

小智 5

基于 Web 的 Firebase 社交身份验证不适用于电容器。这是因为应用程序尝试打开弹出窗口或重定向,但失败了。在电话身份验证的情况下,它会失败,因为 ReCaptcha 所需的窗口对象在应用程序中不可用。

为了在移动应用程序中进行身份验证,您必须使用电容器插件。 电容器 Firebase 身份验证