Firebase Auth state check in Flutter
You can also check your auth status inside initState
like so:
class CheckAuth extends StatefulWidget {
@override
_CheckAuthState createState() => new _CheckAuthState();
}
class _CheckAuthState extends State<CheckAuth> {
bool isLoggedIn;
@override
void initState() {
isLoggedIn = false;
FirebaseAuth.instance.currentUser().then((user) => user != null
? setState(() {
isLoggedIn = true;
})
: null);
super.initState();
// new Future.delayed(const Duration(seconds: 2));
}
@override
Widget build(BuildContext context) {
return isLoggedIn ? new Home() : new LoginScreen();
}
}
What about
FirebaseAuth.instance.onAuthStateChanged.listen((user) {
setState(() => isAuthenticated = user != null);
})