Flutter Phone 认证报错原始示例

Posted

技术标签:

【中文标题】Flutter Phone 认证报错原始示例【英文标题】:Flutter Phone authentication error original example 【发布时间】:2019-05-12 19:41:56 【问题描述】:

亲爱的,

我正在开发这个电话认证的例子(原文): 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';
  

我有这些错误:

未定义的身份验证凭据 未定义名称 GoogleAuthProvider 没有为类 FirebaseAuth 定义方法 signInWithCredential

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

谢谢!!

【问题讨论】:

样本好像过时了 【参考方案1】:

该示例似乎已过时,您可以省略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';
       

【讨论】:

以上是关于Flutter Phone 认证报错原始示例的主要内容,如果未能解决你的问题,请参考以下文章

Flutter-flutter run报错Could not build the application for the simulator.

如何使用 Flutter 与 ERC721 智能合约交互?

Flutter自定义 Flutter 组件 ( 创建自定义 StatelessWidgetStatefulWidget 组件 | 调用自定义组件 )

推送通知后台任务崩溃 Windows Phone 8.1 模拟器/设备

Flutter - 隐藏 FloatingActionButton

Flutter Web 中的 Firebase Phone 身份验证