Flutter问题:Firebase Auth UI卡在邮箱验证界面
配置动态链接(Deep Link)
Firebase邮箱验证链接得靠正确配置的动态链接才能跳回应用并完成验证。去Firebase控制台的「动态链接」页面,先创建一个专属域名(比如xxx.page.link),然后在安卓项目的android/app/src/main/AndroidManifest.xml或者iOS项目的Info.plist里配置对应的跳转规则,保证验证链接能顺利唤起你的应用。处理邮箱验证的回调逻辑
检查示例应用里有没有正确处理验证链接的回调。在main.dart或者Firebase初始化的代码块里,要加上FirebaseAuth.instance.authStateChanges()的监听,或者用FirebaseUIAuth.handleAuthStateChanges来处理验证完成后的状态更新,这样应用才能识别验证成功的状态,结束加载流程。核对Firebase控制台的身份验证设置
进入Firebase控制台的「身份验证」-「登录方法」,确认「邮箱/密码」登录方式已经启用。另外去「模板」-「验证邮件」里,检查链接的域名是不是你刚配置的动态链接域名,别用默认的firebaseapp.com(如果用了自定义域名的话)。验证应用签名与包名/ Bundle ID
安卓端:在Firebase控制台的项目设置里,确认添加的应用签名SHA-1和SHA-256和你测试用的APK签名完全一致。iOS端:核对Bundle ID和控制台里的配置一致,同时开启Associated Domains,添加applinks:你的动态链接域名。检查应用的路由配置
确保应用的路由能正确处理验证链接的跳转,比如在MaterialApp的initialRoute或者onGenerateRoute里,做好verifyEmail相关路由的处理,让Firebase UI能正常加载验证页面并完成整个流程,别让它一直卡在加载状态。
内容的提问来源于stack exchange,提问作者Develocode 777

