The method 'SignInWithTwitter isn't defined in the class flutter

旧时模样 提交于 2020-01-24 00:49:34

问题


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.

Here's my code:

 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;
}

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


回答1:


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

For example:

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;
}

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



来源:https://stackoverflow.com/questions/59489207/the-method-signinwithtwitter-isnt-defined-in-the-class-flutter

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!