FirebaseAuth class

The entry point of the Firebase Authentication SDK.

Inheritance
  • Object
  • PlatformInterface
  • FirebasePluginPlatform
  • FirebaseAuth

Constructors

FirebaseAuth.instanceFor({required FirebaseApp app, @Deprecated('Will be removed in future release. Use setPersistence() instead.') Persistence? persistence})
Returns an instance using a specified FirebaseApp.
factory

Properties

app ↔ FirebaseApp
The FirebaseApp for this current Auth instance.
getter/setter pair
currentUser User?
Returns the current User if they are currently signed-in, or null if not.
no setter
hashCode int
The hash code for this object.
no setterinherited
languageCode String?
The current Auth instance's language code.
no setter
pluginConstants Map
Returns any plugin constants this plugin app instance has initialized.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
tenantId String?
The current Auth instance's tenant ID.
getter/setter pair

Methods

applyActionCode(String code) Future<void>
Applies a verification code sent to the user by email or other out-of-band mechanism.
authStateChanges() Stream<User?>
Notifies about changes to the user's sign-in state (such as sign-in or sign-out).
checkActionCode(String code) Future<ActionCodeInfo>
Checks a verification code sent to the user by email or other out-of-band mechanism.
confirmPasswordReset({required String code, required String newPassword}) Future<void>
Completes the password reset process, given a confirmation code and new password.
createUserWithEmailAndPassword({required String email, required String password}) Future<UserCredential>
Tries to create a new user account with the given email address and password.
fetchSignInMethodsForEmail(String email) Future<List<String>>
Returns a list of sign-in methods that can be used to sign in a given user (identified by its main email address).
getRedirectResult() Future<UserCredential>
Returns a UserCredential from the redirect-based sign-in flow.
idTokenChanges() Stream<User?>
Notifies about changes to the user's sign-in state (such as sign-in or sign-out) and also token refresh events.
Checks if an incoming link is a sign-in with email link.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
revokeTokenWithAuthorizationCode(String authorizationCode) Future<void>
Apple only. Users signed in with Apple provider can revoke their token using an authorization code. Authorization code can be retrieved on the user credential i.e. userCredential.additionalUserInfo.authorizationCode
sendPasswordResetEmail({required String email, ActionCodeSettings? actionCodeSettings}) Future<void>
Sends a password reset email to the given email address.
sendSignInLinkToEmail({required String email, required ActionCodeSettings actionCodeSettings}) Future<void>
Sends a sign in with email link to provided email address.
setLanguageCode(String? languageCode) Future<void>
When set to null, sets the user-facing language code to be the default app language.
setPersistence(Persistence persistence) Future<void>
Changes the current type of persistence on the current Auth instance for the currently saved Auth session and applies this type of persistence for future sign-in requests, including sign-in with redirect requests.
setSettings({bool appVerificationDisabledForTesting = false, String? userAccessGroup, String? phoneNumber, String? smsCode, bool? forceRecaptchaFlow}) Future<void>
Updates the current instance with the provided settings.
signInAnonymously() Future<UserCredential>
Asynchronously creates and becomes an anonymous user.
signInWithAuthProvider(AuthProvider provider) Future<UserCredential>
Signs in with an AuthProvider using native authentication flow. This is deprecated in favor of signInWithProvider().
signInWithCredential(AuthCredential credential) Future<UserCredential>
Asynchronously signs in to Firebase with the given 3rd-party credentials (e.g. a Facebook login Access Token, a Google ID Token/Access Token pair, etc.) and returns additional identity provider data.
signInWithCustomToken(String token) Future<UserCredential>
Tries to sign in a user with a given custom token.
signInWithEmailAndPassword({required String email, required String password}) Future<UserCredential>
Attempts to sign in a user with the given email address and password.
Signs in using an email address and email sign-in link.
signInWithPhoneNumber(String phoneNumber, [RecaptchaVerifier? verifier]) Future<ConfirmationResult>
Starts a sign-in flow for a phone number.
signInWithPopup(AuthProvider provider) Future<UserCredential>
Authenticates a Firebase client using a popup-based OAuth authentication flow.
signInWithProvider(AuthProvider provider) Future<UserCredential>
Signs in with an AuthProvider using native authentication flow.
signInWithRedirect(AuthProvider provider) Future<void>
Authenticates a Firebase client using a full-page redirect flow.
signOut() Future<void>
Signs out the current user.
toString() String
A string representation of this object.
override
useAuthEmulator(String host, int port, {bool automaticHostMapping = true}) Future<void>
Changes this instance to point to an Auth emulator running locally.
useEmulator(String origin) Future<void>
Changes this instance to point to an Auth emulator running locally.
userChanges() Stream<User?>
Notifies about changes to any user updates.
verifyPasswordResetCode(String code) Future<String>
Checks a password reset code sent to the user by email or other out-of-band mechanism.
verifyPhoneNumber({String? phoneNumber, PhoneMultiFactorInfo? multiFactorInfo, required PhoneVerificationCompleted verificationCompleted, required PhoneVerificationFailed verificationFailed, required PhoneCodeSent codeSent, required PhoneCodeAutoRetrievalTimeout codeAutoRetrievalTimeout, String? autoRetrievedSmsCodeForTesting, Duration timeout = const Duration(seconds: 30), int? forceResendingToken, MultiFactorSession? multiFactorSession}) Future<void>
Starts a phone number verification process for the given phone number.

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Properties

instance FirebaseAuth
Returns an instance using the default FirebaseApp.
no setter