类flutter中未定义方法'SignInWithTwitter [英] The method 'SignInWithTwitter isn't defined in the class flutter

查看:496
本文介绍了类flutter中未定义方法'SignInWithTwitter的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图在我的项目中添加Twitter登录方法.当我在项目中尝试它时,我在线上几乎没有几行代码,这会引发我错误.有人可以帮我吗?

im trying to add Twitter sign-in method in my project.i have got few lines of code online when i try it in my project its throwing me error. can someone help me in this.

这是我的代码:

 Future<FirebaseUser> loginWithTwitter() async {
  var twitterLogin = new TwitterLogin(
    consumerKey: 'Y2MyConsumerKeyYKX',
    consumerSecret: 'xYXUMyConsumerSecretKeyjFAJZMyConsumerSecretKeyS3i',
  );

  final TwitterLoginResult result = await twitterLogin.authorize();

  switch (result.status) {
    case TwitterLoginStatus.loggedIn:
      var session=result.session;
      final AuthCredential credential= TwitterAuthProvider.getCredential(
          authToken: session.token,
          authTokenSecret: session.secret
      );
      FirebaseUser firebaseUser=(await _auth.signInWithCredential(credential)).user;
      print("twitter sign in"+firebaseUser.toString());
      break;
    case TwitterLoginStatus.cancelledByUser:
      break;
    case TwitterLoginStatus.error:
      break;
  }
  return null;
}

错误与SignInWithTwitter和Debug print命令有关.有人可以帮助我吗? 在此处输入图片描述

The error is with the command SignInWithTwitter and Debug print.can someone help me in this. enter image description here

推荐答案

FirebaseAuth不包含名为signInWithTwitter的方法,如果要使用twitter登录,则需要使用类

FirebaseAuth does not contain a method called signInWithTwitter, if you want to sign in using twitter then you need to use the class TwitterAuthProvider

例如:

switch (result.status) {
  case TwitterLoginStatus.loggedIn:
    var session=result.session;
    final AuthCredential credential= TwitterAuthProvider.getCredential(
      authToken: session.token,
      authTokenSecret: session.secret
    );
    FirebaseUser firebaseUser=(await firebaseAuth.signInWithCredential(credential)).user;
    print("twitter sign in"+firebaseUser.toString());
    break;
  case TwitterLoginStatus.cancelledByUser:
    break;
  case TwitterLoginStatus.error:
    break;
}

getCredential内,您可以添加authTokenauthTokenSecret,然后将该变量作为参数传递给signInWithCredentials

Inside the getCredential you can add the authToken and authTokenSecret and then pass the variable as an argument to signInWithCredentials

这篇关于类flutter中未定义方法'SignInWithTwitter的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆