unified_access library

UnifiedAccess - Simplified Firebase authentication and notification management.

Integrates multiple authentication methods (phone, email, Google, Apple, Facebook) and provides unified notification services (local + FCM) under a single package.

Classes

AccessToken
ActionCodeInfo
A response from calling checkActionCode.
ActionCodeSettings
Interface that defines the required continue/state URL with optional Android and iOS bundle identifiers.
ActiveNotification
Details of an active notification.
AdditionalUserInfo
A structure containing additional user information from a federated identity provider.
AndroidAppCheckProvider
AndroidBitmap<T>
Represents a bitmap on Android.
AndroidBuildVersion
Version values of the current Android operating system build derived from android.os.Build.VERSION.
AndroidDebugProvider
Debug provider for Android.
AndroidDeviceInfo
Information derived from android.os.Build.
AndroidFlutterLocalNotificationsPlugin
Android implementation of the local notifications plugin.
AndroidIcon<T>
Represents an icon on Android.
AndroidInitializationSettings
Plugin initialization settings for Android.
AndroidNotification
Android specific properties of a RemoteNotification.
AndroidNotificationAction
Mirrors the Action class in AndroidX.
AndroidNotificationActionInput
Mirrors the RemoteInput functionality available in NotificationCompat.
AndroidNotificationChannel
Settings for Android notification channels.
AndroidNotificationChannelGroup
A group of related Android notification channels.
AndroidNotificationDetails
Contains notification details specific to Android.
AndroidNotificationSound
Represents an Android notification sound.
AndroidPlayIntegrityProvider
Play Integrity provider for Android (Firebase recommended).
AppleAppAttestProvider
App Attest provider for Apple platforms (Firebase recommended).
AppleAppAttestWithDeviceCheckFallbackProvider
App Attest provider with Device Check fallback for Apple platforms.
AppleAppCheckProvider
AppleAuthCredential
The auth credential returned from calling AppleAuthProvider.credential.
AppleAuthProvider
This class should be used to either create a new Apple credential with an access code, or use the provider to trigger user authentication flows.
AppleDebugProvider
Debug provider for Apple platforms.
AppleDeviceCheckProvider
Device Check provider for Apple platforms.
AppleFullPersonName
AppleIdCredential
AppleIdRequest
An OpenID authorization request that relies on the user’s Apple ID.
AppleNotification
Apple specific properties of a RemoteNotification.
AppleNotificationSound
Represents the sound property for AppleNotification
AppleSignInButton
A button for Sign in With Apple
AssetsLinuxIcon
Represents an icon from the Flutter Assets directory. Currently the assets directory is data/flutter_assets which is located on the path relative to the executable file.
AssetsLinuxSound
Represents a sound from the Flutter Assets directory.
AuthCredential
Interface that represents the credentials returned by an auth provider. Implementations specify the details about each auth provider's credential requirements.
AuthorizationRequest
A base class for different kinds of authorization requests.
AuthorizationResult
The result of an AppleIdRequest request.
AuthProvider
A base class which all providers must extend.
BaseDeviceInfo
The base class for platform's device info.
BigPictureStyleInformation
Used to pass the content for an Android notification displayed using the big picture style.
BigTextStyleInformation
Used to pass the content for an Android notification displayed using the big text style.
BitmapFilePathAndroidIcon
Represents a file path to a bitmap that should be used for as an icon on Android.
ByteArrayAndroidBitmap
Represents a base64 encoded AndroidBitmap.
ByteArrayAndroidIcon
Represents a bitmap asset belonging to the Flutter application that should be used for as an icon on Android.
ByteDataLinuxIcon
Represents an icon from a raw image data bytes, see LinuxRawIconData.
ClassicToken
Class that contains the facebook access token data
ConfirmationResult
A result from a phone number sign-in, link, or reauthenticate call.
ContentUriAndroidIcon
Represents a content URI that should be used for as an icon on Android.
CredentialState
DarwinInitializationSettings
Plugin initialization settings for Darwin-based operating systems such as iOS and macOS
DarwinNotificationAction
Describes the notification action itself.
DarwinNotificationAttachment
Represents an attachment for a notification on Darwin-based operation systems such as iOS and macOS
DarwinNotificationAttachmentThumbnailClippingRect
Represents the clipping rectangle used for the thumbnail image.
DarwinNotificationCategory
Corresponds to the UNNotificationCategory type which is used to configure notification categories and accompanying options.
DarwinNotificationDetails
Configures notification details specific to Darwin-based operation systems such as iOS and macOS
DefaultStyleInformation
The default Android notification style.
DeviceInfoPlugin
Provides device and operating system information.
DeviceInfoPlusLinuxPlugin
See DeviceInfoPlatform
DeviceInfoPlusWindowsPlugin
The Windows implementation of DeviceInfoPlatform.
DrawableResourceAndroidBitmap
Represents a drawable resource belonging to the Android application that should be used as a bitmap on Android.
DrawableResourceAndroidIcon
Represents a drawable resource belonging to the Android application that should be used as an icon on Android.
EmailAuthCredential
The auth credential returned from calling EmailAuthProvider.credential.
EmailAuthProvider
A EmailAuthCredential can be created by calling EmailAuthProvider.credential with an email and password.
FacebookAuth
this class implements the FacebookAuthPlatform interface and calls to the native APIs on Android, iOS and web.
FacebookAuthCredential
The auth credential returned from calling FacebookAuthProvider.credential.
FacebookAuthProvider
This class should be used to either create a new Facebook credential with an access code, or use the provider to trigger user authentication flows.
FacebookPermissions
this class is used to saved the granted and declined permissions after login
FcmDeviceInfoModel
FilePathAndroidBitmap
Represents a file path that should be used for a bitmap on Android.
FilePathLinuxIcon
Represents an icon located at the path in the file system. It сan be either an absolute UNIX path or a file:// URI scheme, for example:
Firebase
The entry point for accessing Firebase.
FirebaseApp
Represents a single Firebase app instance.
FirebaseAppCheck
FirebaseAuth
The entry point of the Firebase Authentication SDK.
FirebaseCrashlytics
The entry point for accessing a FirebaseCrashlytics.
FirebaseExceptionMessage
FirebaseExceptionMessage class
FirebaseMessaging
The FirebaseMessaging entry point.
FirebaseOptions
The options used to configure a Firebase app.
FirebaseService
A marker interface for Firebase services that can be registered in FirebaseApp.
FlutterBitmapAssetAndroidIcon
Represents a bitmap asset belonging to the Flutter application that should be used for as an icon on Android.
FlutterLocalNotificationsPlatform
The interface that all implementations of flutter_local_notifications must implement.
FlutterLocalNotificationsPlugin
Provides cross-platform functionality for displaying local notifications.
FlutterLocalNotificationsWindows
The Windows implementation of package:flutter_local_notifications.
GameCenterAuthCredential
The auth credential returned from calling GameCenterAuthProvider.credential.
GameCenterAuthProvider
This class should be used to create a new Game Center credential to trigger an authentication flow on Apple platform.
GithubAuthCredential
The auth credential returned from calling GithubAuthProvider.credential.
GithubAuthProvider
This class should be used to either create a new GitHub credential with an access code, or use the provider to trigger user authentication flows.
GoogleAuthCredential
The auth credential returned from calling GoogleAuthProvider.credential.
GoogleAuthProvider
This class should be used to either create a new Google credential with an access code, or use the provider to trigger user authentication flows.
GoogleIdentity
Encapsulation of the fields that represent a Google user's identity.
GoogleSignIn
GoogleSignIn allows you to authenticate Google users.
GoogleSignInAccount
Represents a signed-in Google account, providing account information as well as utilities for obtaining authentication and authorization tokens.
GoogleSignInAuthentication
Holds authentication tokens.
GoogleSignInAuthenticationEvent
A base class for authentication event streams.
GoogleSignInAuthenticationEventSignIn
A sign-in event, corresponding to an authentication flow completing successfully.
GoogleSignInAuthenticationEventSignOut
A sign-out event, corresponding to a user having been signed out.
GoogleSignInAuthorizationClient
A utility for requesting authorization tokens.
GoogleSignInClientAuthorization
Holds client authorization tokens.
GoogleSignInServerAuthorization
Holds server authorization tokens.
GoogleUserCircleAvatar
Builds a CircleAvatar profile image of the appropriate resolution
IdTokenResult
Interface representing ID token result obtained from getIdTokenResult. It contains the ID token JWT string and other helper properties for getting different data associated with the token as well as all the decoded payload claims.
InboxStyleInformation
Used to pass the content for an Android notification displayed using the inbox style.
InitializationSettings
Settings for initializing the plugin for each platform.
IosDeviceInfo
Information derived from UIDevice.
IOSFlutterLocalNotificationsPlugin
iOS implementation of the local notifications plugin.
IOSInitializationSettings
Plugin initialization settings for iOS
IosUtsname
Information derived from utsname. See http://pubs.opengroup.org/onlinepubs/7908799/xsh/sysutsname.h.html for details.
LimitedToken
LinuxDeviceInfo
Device information for a Linux system.
LinuxFlutterLocalNotificationsPlugin
A stub implementation to satisfy compilation of multi-platform packages that depend on flutter_local_notifications_linux. This should never actually be created.
LinuxInitializationSettings
Plugin initialization settings for Linux.
LinuxNotificationAction
Represents an action, that send a request message back to the notification client when invoked. This functionality may not be implemented by the notification server, conforming clients should check if it's available using LinuxServerCapabilities. For more information, please see Desktop Notifications Specification https://specifications.freedesktop.org/notification-spec/latest/ar01s02.html
LinuxNotificationDetails
Configures notification details specific to Linux. The system may not support all features.
LinuxNotificationIcon
Represents Linux notification icon.
LinuxNotificationLocation
Represents the location on the screen that the notification should point to.
LinuxNotificationSound
Represents Linux notification sound.
LinuxNotificationTimeout
The timeout of the Linux notification.
LinuxRawIconData
Represents an icon in the raw image data.
LinuxServerCapabilities
Represents capabilities, implemented by the Linux notification server.
LoginResult
class to handle a login request
MacOsDeviceInfo
Object encapsulating MACOS device information.
MacOSFlutterLocalNotificationsPlugin
macOS implementation of the local notifications plugin.
MediaStyleInformation
Used to pass the content for an Android notification displayed using the media style.
Message
Represents a message used in Android messaging style notifications.
MessagingStyleInformation
Used to pass the content for an Android notification displayed using the messaging style.
MicrosoftAuthProvider
This class should be used to either create a new Microsoft credential with an access code, or use the provider to trigger user authentication flows.
MsixUtils
Helpful methods to support MSIX and package identity.
MultiFactor
Defines multi-factor related properties and operations pertaining to a User. This class acts as the main entry point for enrolling or un-enrolling second factors for a user, and provides access to their currently enrolled factors.
MultiFactorAssertion
Represents an assertion that the Firebase Authentication server can use to authenticate a user as part of a multi-factor flow.
MultiFactorInfo
Represents a single second factor means for the user.
MultiFactorResolver
Utility class that contains methods to resolve second factor requirements on users that have opted into two-factor authentication.
MultiFactorSession
Identifies the current session to enroll a second factor or to complete sign in when previously enrolled.
NotificationAppLaunchDetails
Contains details on the notification that launched the application.
NotificationDetails
Contains notification details specific to each platform.
NotificationResponse
Details of a Notification Action that was triggered.
NotificationsEnabledOptions
Data class that represent current state of notification options.
NotificationSettings
Represents the devices notification settings.
NsError
OAuthCredential
A generic OAuth credential.
OAuthProvider
A generic provider instance.
OpenIdOperation
The kinds of operations that you can perform with OpenID authentication.
PasswordValidationStatus
PendingNotificationRequest
Details of a pending notification that has not been delivered.
Person
Details of a person e.g. someone who sent a message.
PersonNameComponents
The separate parts of a person's name, allowing locale-aware formatting.
PhoneAuthCredential
The auth credential returned from calling PhoneAuthProvider.credential.
PhoneAuthProvider
This class should be used to either create a new Phone credential with an verification ID and SMS code.
PhoneMultiFactorGenerator
Provider for generating a PhoneMultiFactorAssertion.
PhoneMultiFactorInfo
Represents the information for a phone second factor.
PlayGamesAuthCredential
The auth credential returned from calling PlayGamesAuthProvider.credential.
PlayGamesAuthProvider
This class should be used to either create a new Play Games credential with an access code, or use the provider to trigger user authentication flows.
RawResourceAndroidNotificationSound
Represents a raw resource belonging to the Android application that should be used for the notification sound.
ReCaptchaEnterpriseProvider
ReCaptchaV3Provider
RecaptchaVerifier
An reCAPTCHA-based application verifier.
RemoteMessage
A class representing a message sent from Firebase Cloud Messaging.
RemoteNotification
A class representing a notification which has been constructed and sent to the device via FCM.
SAMLAuthProvider
Security Assertion Markup Language based provider.
Scope
The kinds of contact information that can be requested from the user.
StyleInformation
Abstract class for defining an Android notification style
TheAppleSignIn
ThemeLinuxIcon
Represents a system theme icon. See https://www.freedesktop.org/wiki/Specifications/icon-naming-spec/ for more help.
ThemeLinuxSound
Represents a system theme sound. See https://www.freedesktop.org/wiki/Specifications/sound-theme-spec/ for more help.
TotpMultiFactorGenerator
Provider for generating a PhoneMultiFactorAssertion.
TotpMultiFactorInfo
Represents the information for a phone second factor.
TotpSecret
TwitterAuthCredential
The auth credential returned from calling TwitterAuthProvider.credential.
TwitterAuthProvider
This class should be used to either create a new Twitter credential with an access code, or use the provider to trigger user authentication flows.
UnifiedAuthentication
UnifiedNotification
UnifiedNotification class
UriAndroidNotificationSound
Represents a URI on the Android device that should be used for the notification sound.
User
A user account.
UserCredential
A UserCredential is returned from authentication requests such as createUserWithEmailAndPassword.
UserInfo
User profile information, visible only to the Firebase project's apps.
UserMetadata
Interface representing a user's metadata.
WebBrowserInfo
Information derived from navigator.
WebDebugProvider
Debug provider for Web.
WebNotification
Web specific properties of a RemoteNotification.
WindowsAction
A button in a Windows notification.
WindowsAppCheckProvider
Base class for Windows App Check providers.
WindowsColumn
A vertical column of text and images in a Windows notification.
WindowsDebugProvider
Debug provider for Windows.
WindowsDeviceInfo
Object encapsulating WINDOWS device information.
WindowsHeader
A header that groups multiple Windows notifications.
WindowsImage
An image in a Windows notification.
WindowsInitializationSettings
Plugin initialization settings for Windows.
WindowsInput
A text or multiple choice input element in a Windows notification.
WindowsNotificationAudio
Specifies custom audio to play during a notification.
WindowsNotificationDetails
Contains notification details specific to Windows.
WindowsNotificationPart
A text or image element in a Windows notification.
WindowsNotificationText
Text in a Windows notification.
WindowsProgressBar
A progress bar in a Windows notification.
WindowsRow
A group of notification content that must be displayed as a whole row.
WindowsSelection
An option that can be selected by a WindowsSelectionInput.
WindowsSelectionInput
A multiple choice input.
WindowsTextInput
A text input.
YahooAuthCredential
The auth credential returned from calling YahooAuthProvider.credential.
YahooAuthProvider
This class should be used to either create a new Yahoo credential with an access code, or use the provider to trigger user authentication flows.

Enums

AccessTokenType
ActionCodeInfoOperation
The type of operation that generated the action code from calling checkActionCode.
AndroidNotificationCategory
The available categories for Android notifications.
AndroidNotificationChannelAction
The available actions for managing notification channels.
AndroidNotificationPriority
An enum representing a notification priority on Android.
AndroidNotificationStyle
The available notification styles on Android.
AndroidNotificationVisibility
An enum representing the visibility level of a notification on Android.
AndroidProvider
AndroidScheduleMode
Used to specify how notifications should be scheduled on Android.
AndroidServiceForegroundType
The available foreground types for an Android service.
AndroidServiceStartType
The available start types for an Android service.
AppleNotificationSetting
An enum representing a notification setting for this app on the device.
AppleProvider
An enum representing the different types of Apple App Attest providers.
AppleShowPreviewSetting
An enum representing the show previews notification setting for this app on the device.
AudioAttributesUsage
The available audio attributes usages for an Android service.
AuthorizationStatus
BrowserName
List of supported browsers
ButtonStyle
A style for the authorization button.
ButtonType
A type for the authorization button.
CredentialStatus
DarwinNotificationActionOption
Describes when & how the notification action is displayed.
DarwinNotificationCategoryOption
Desribes the options of each notification category.
DateTimeComponents
The components of a date and time representations.
Day
The days of the week.
GoogleSignInExceptionCode
Types of GoogleSignInExceptions, as indicated by GoogleSignInException.code.
GroupAlertBehavior
The available alert behaviours for grouped notifications.
Importance
The available importance levels for Android notifications.
InterruptionLevel
Type used to indicate the importance and delivery timing of a notification.
LinuxHintValueType
Represents the notification hint value type.
LinuxIconType
Specifies the Linux notification icon type.
LinuxNotificationCategory
Categories of notifications.
LinuxNotificationUrgency
The urgency level of the Linux notification.
LinuxSoundType
Specifies the Linux notification sound type.
LoginBehavior
defines the login ui Behavior on Android
LoginStatus
LoginTracking
NotificationResponseType
The possible notification response types
NotificationUpdateResult
The result of updating a notification.
NotificationVisibility
Defines the notification visibility on the lockscreen.
Persistence
An enumeration of the possible persistence mechanism types.
Priority
Priority for notifications on Android 7.1 and lower.
RecaptchaVerifierSize
A enum to represent a reCAPTCHA widget size.
RecaptchaVerifierTheme
A enum to represent a reCAPTCHA widget theme.
RepeatInterval
The available intervals for periodically showing notifications.
SemanticAction
The available meanings that can be associated with a notification action.
UserDetectionStatus
Possible values for the real user indicator.
WindowsActionPlacement
Decides how a WindowsAction is placed on a notification.
WindowsActivationType
Decides how the WindowsAction will launch the app.
WindowsButtonStyle
Decides how a WindowsAction will be styled.
WindowsHeaderActivation
Decides how the application will open when the header is pressed.
WindowsImageCrop
How a Windows notification image can be cropped.
WindowsImagePlacement
Where a Windows notification image can be placed.
WindowsInputType
The type of a WindowsInput.
WindowsNotificationBehavior
Decides how a WindowsAction will react to being pressed.
WindowsNotificationDuration
The duration for a Windows notification.
WindowsNotificationScenario
The scenario a notification is being used for.
WindowsNotificationSound
A preset sound for a Windows notification.
WindowsTextPlacement
Where text can be placed in a Windows notification.

Extensions

FcmDeviceInfoModelPatterns on FcmDeviceInfoModel
Adds pattern-matching-related methods to FcmDeviceInfoModel.

Constants

defaultFirebaseAppName → const String
The default Firebase application name.

Functions

getMappedHost(String originalHost) String

Typedefs

BackgroundMessageHandler = Future<void> Function(RemoteMessage message)
Defines a handler for incoming remote message payloads.
DidReceiveBackgroundNotificationResponseCallback = void Function(NotificationResponse details)
Signature of callback triggered on background isolate when a user taps on a notification or a notification action.
DidReceiveLocalNotificationCallback = void Function(int id, String? title, String? body, String? payload)
Signature of the callback that is triggered when a notification is shown whilst the app is in the foreground.
DidReceiveNotificationResponseCallback = void Function(NotificationResponse details)
Signature of callback triggered on main isolate when a user taps on a notification or a notification action.
NotificationOpenedCallback = void Function(RemoteMessage? message)
Callback type for notification open events that provides the RemoteMessage data.
PhoneCodeAutoRetrievalTimeout = void Function(String verificationId)
Typedef for handling automatic phone number timeout resolution.
PhoneCodeSent = void Function(String verificationId, int? forceResendingToken)
Typedef for handling when Firebase sends a SMS code to the provided phone number.
PhoneVerificationCompleted = void Function(PhoneAuthCredential phoneAuthCredential)
Typedef for an automatic phone number resolution.
PhoneVerificationFailed = void Function(FirebaseAuthException error)
Typedef for handling errors via phone number verification.
RecaptchaVerifierOnError = void Function(FirebaseAuthException exception)
Called when the reCAPTCHA widget errors (such as a network error).
RecaptchaVerifierOnExpired = void Function()
Called when the time to complete the reCAPTCHA widget expires.
RecaptchaVerifierOnSuccess = void Function()
Called on successful completion of the reCAPTCHA widget.

Exceptions / Errors

FirebaseAuthenticationException
FirebaseAuthenticationException class
FirebaseAuthException
Generic exception related to Firebase Authentication. Check the error code and message for more details.
FirebaseAuthMultiFactorException
MultiFactor exception related to Firebase Authentication. Check the error code and message for more details.
FirebaseException
A generic class which provides exceptions in a Firebase-friendly format to users.
GoogleSignInException
An exception throws by the plugin when there is authenication or authorization failure, or some other error.