You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级FirebaseAuth后iOS端登录页面Email选项消失求助

解决升级FirebaseAuth后Email登录选项消失的问题

我刚碰到过一模一样的坑!升级FirebaseUI之后,Email登录的配置逻辑确实变了,不再是把FUIEmailAuthProvider直接塞进providers数组里了。

正确的配置步骤:

  1. 先获取FUIAuth的实例:
guard let authUI = FUIAuth.defaultAuthUI() else {
    // 处理获取实例失败的情况
    return
}
  1. 配置Email登录提供者(这一步是关键!):
let emailProvider = FUIEmailAuthProvider()
// 如果你需要自定义Email登录行为,比如允许用户注册、设置密码最小长度等,可在这里配置
// 示例:开启Email注册功能
// emailProvider.signInWithEmailOption = .enable
// 将配置好的Email提供者绑定到authUI实例
authUI.emailAuthProvider = emailProvider
  1. 再设置其他第三方登录提供者的数组(这里不需要再添加Email相关项):
let providers: [FUIAuthProvider] = [
    FUIGoogleAuth(),
    FUIFacebookAuth(),
    FUITwitterAuth(),
    FUIPhoneAuth(authUI: authUI)
]
authUI.providers = providers

为什么之前的代码会报错?

新版本的FirebaseUI把FUIEmailAuthProvider的初始化器改成了内部访问权限,所以你没法直接用FUIEmailAuthProvider()创建实例,必须通过FUIAuth的emailAuthProvider属性来配置Email登录。这个变更确实没在文档里显眼标注,很容易踩坑。

按上面的步骤配置后,登录页面的Email选项就会重新出现了,亲测有效!

内容的提问来源于stack exchange,提问作者jimijon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:21:02