title: How to save user data
body: <p>I've this initState in the main page for checking auth:</p>
  
  <pre><code>  @override
    void initState() {
      FirebaseAuth.instance.currentUser().then((fire) {
        if (fire != null) {
          setState(() {
            _isAuth = true;
            print('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^6');
  
            print(_isAuth);
            print('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^6');
          });
        }
      });
      super.initState();
    }
  </code></pre>
  
  <p>At sign in the user data saved, But if the user already authentic all the data(email, id etc..) lost.</p>
  
  <p>Sign in:</p>
  
  <pre><code> Future&lt;FirebaseUser&gt; signIn() async {
          GoogleSignInAccount googleSignInAccount = await googleSignIn.signIn();
          GoogleSignInAuthentication googleSignInAuthentication =
              await googleSignInAccount.authentication;
  
          AuthCredential credential = GoogleAuthProvider.getCredential(
              accessToken: googleSignInAuthentication.accessToken,
              idWhat is the best way to keep the information?
  Token: googleSignInAuthentication.idToken);
          final FirebaseUser user = await _auth.signInWithCredential(credential);
          print(user.displayName);
          _authUser = User(id: user.uid, userEmail: user.email);
          notifyListeners();
  
          return user;
        }
  </code></pre>
  
  <p>What is the best way to save the data?</p>