Firebase 为什么Flitter一直试图匿名登录用户?
在一个次要项目中使用Flutter,最初设置为通过电子邮件和匿名方式进行身份验证 奇怪的是,即使我们的测试用户使用电子邮件登录,他们在重新启动应用程序时仍然会匿名登录 作为一种解决方法,我们刚刚关闭了匿名用户,这已经得到了修复,但应用程序仍然尝试匿名登录用户,输出日志证明了这一点 [VERBOSE-2:dart_error.cc(16)]未处理的异常: PlatformException(例外,FIRAuthErrorDomain,给定的登录提供程序已对此Firebase项目禁用。请在Firebase控制台的“身份验证”部分的“登录方法”选项卡下启用它。) 现在这不是一个大问题,但有点小问题 下面是用于加载用户的代码片段Firebase 为什么Flitter一直试图匿名登录用户?,firebase,firebase-authentication,flutter,Firebase,Firebase Authentication,Flutter,在一个次要项目中使用Flutter,最初设置为通过电子邮件和匿名方式进行身份验证 奇怪的是,即使我们的测试用户使用电子邮件登录,他们在重新启动应用程序时仍然会匿名登录 作为一种解决方法,我们刚刚关闭了匿名用户,这已经得到了修复,但应用程序仍然尝试匿名登录用户,输出日志证明了这一点 [VERBOSE-2:dart_error.cc(16)]未处理的异常: PlatformException(例外,FIRAuthErrorDomain,给定的登录提供程序已对此Firebase项目禁用。请在Fireb
class Profile extends StatefulWidget {
final userId;
Profile({Key key, final this.userId}) : super(key: key);
@override
_ProfileState createState() => new _ProfileState();
}
class _ProfileState extends State<Profile> {
FirebaseUser _user;
logout() {
}
@override
void initState() {
FirebaseAuth.instance.currentUser().then((user) => setState(() {
_user = user;
}));
super.initState();
}
@override
Widget build(BuildContext context) {
final Widget bioStack = new Stack(children: [
new Text('User ID: $_user.uid')
]);
return new Column(
children: <Widget>[bioStack, new RaisedButton(
child: new Text('Logout'),
onPressed: logout()
)],
);
}
}
类配置文件扩展StatefulWidget{
最终用户ID;
Profile({Key-Key,final this.userId}):super(Key:Key);
@凌驾
_ProfileState createState()=>new_ProfileState();
}
类_ProfileState扩展了状态{
FirebaseUser\u用户;
注销(){
}
@凌驾
void initState(){
FirebaseAuth.instance.currentUser()。然后((用户)=>setState(){
_用户=用户;
}));
super.initState();
}
@凌驾
小部件构建(构建上下文){
最终小部件bioStack=新堆栈(子项:[
新文本('User ID:$\u User.uid')
]);
返回新列(
孩子们:[生物斯塔克,新升起的按钮(
子项:新文本(“注销”),
onPressed:logout()
)],
);
}
}
不,我不这么认为。您可以轻松获取上次登录的用户。要做到这一点,您必须使用“异步”函数。查看答案,它将帮助您获取当前Firebase用户