35

I have been trying to implement Google login screen using Flutter.

final AuthResult authResult = await _auth.signInWithCredential(credential);

The editor, for the line above, says:

Undefined class 'AuthResult'

How can I fix it? Any help would be very appreciated.

Berkay
  • 1,029
  • 1
  • 10
  • 28

7 Answers7

88

They renamed the class AuthResult to UserCredential

xKobalt
  • 1,498
  • 2
  • 13
  • 19
Prabhashi Buddhima
  • 1,235
  • 2
  • 13
  • 19
77

Starting from Version firebase_auth 0.18.0:

FirebaseUser has been changed to User

AuthResult has been changed to UserCredential

GoogleAuthProvider.getCredential() has been changed to GoogleAuthProvider.credential()

onAuthStateChanged which notifies about changes to the user's sign-in state was replaced with authStateChanges()

currentUser() which is a method to retrieve the currently logged in user, was replaced with the property currentUser and it no longer returns a Future<FirebaseUser>

Nuqo
  • 3,793
  • 1
  • 25
  • 37
10

The problem was firebase_auth version that I added to pubspec.yaml.

Previous version I have been using: firebase_auth: ^0.11.1+8

Now: firebase_auth: ^0.15.2

This change on versions has fixed the problem.

Berkay
  • 1,029
  • 1
  • 10
  • 28
2

In 2020 firebase_Auth_version(0.18.3+1), they changed from AuthResult to UserCredential, and GetCredentials deprecated to credentials.

Jeremy Caney
  • 7,102
  • 69
  • 48
  • 77
Ahsan
  • 241
  • 4
  • 8
2

AuthResult has been changed to UserCredential

1

In 2021 firebase_auth_version of ^3.0.1, AuthException has also been change to FirebaseAuthException

0
final UserCredential authResult = await _auth.signInWithCredential(credential);
Kibrom Hs
  • 39
  • 3