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 - customAuthDomain ↔ String?
-
The current Auth instance's custom auth domain.
The auth domain used to handle redirects from OAuth provides, for example
"my-awesome-app.firebaseapp.com". By default, this is set to
null
and default auth domain is used.getter/setter pair - 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.
-
isSignInWithEmailLink(
String emailLink) → bool - 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.
-
signInWithEmailLink(
{required String email, required String emailLink}) → Future< UserCredential> - 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