Flutter Phone 认证错误原始示例

mre*_*eig 3 authentication firebase firebase-authentication flutter

亲爱的,

我正在开发这个电话认证的例子(原始):https : //github.com/flutter/plugins/tree/master/packages/firebase_auth/example

当然,我添加了 .json 和正确的依赖项(我认为,因为 firebase 的其他补充工作正常)。

但是,我得到了这部分代码:

Future<String> _testSignInWithGoogle() async {
    final GoogleSignInAccount googleUser = await _googleSignIn.signIn();
    final GoogleSignInAuthentication googleAuth =
    await googleUser.authentication;
    final AuthCredential credential = GoogleAuthProvider.getCredential(
      accessToken: googleAuth.accessToken,
      idToken: googleAuth.idToken,
    );
    final FirebaseUser user = await _auth.signInWithCredential(credential);
    assert(user.email != null);
    assert(user.displayName != null);
    assert(!user.isAnonymous);
    assert(await user.getIdToken() != null);

    final FirebaseUser currentUser = await _auth.currentUser();
    assert(user.uid == currentUser.uid);

    return 'signInWithGoogle succeeded: $user';
  }
Run Code Online (Sandbox Code Playgroud)

我有论文错误:

  • 未定义的 AuthCredential
  • 未定义的名称 GoogleAuthProvider
  • 未为类 FirebaseAuth 定义方法 signInWithCredential

你能帮我吗?如果是原始示例,我不理解这些错误。

谢谢!!

die*_*per 6

看起来该示例已过时,您可以省略AuthCredentialGoogleAuthProvider

    Future<String> _testSignInWithGoogle() async {
        final GoogleSignInAccount googleUser = await _googleSignIn.signIn();
        final GoogleSignInAuthentication googleAuth =
        await googleUser.authentication;

        final FirebaseUser user =
            await FirebaseAuth.instance.signInWithGoogle(
          accessToken: googleAuth.accessToken,
          idToken: googleAuth.idToken,
        );

        assert(user.email != null);
        assert(user.displayName != null);
        assert(!user.isAnonymous);
        assert(await user.getIdToken() != null);

        final FirebaseUser currentUser = await _auth.currentUser();
        assert(user.uid == currentUser.uid);

        return 'signInWithGoogle succeeded: $user';
      } 
Run Code Online (Sandbox Code Playgroud)