Plugin.Firebase.Auth 3.0.0

dotnet add package Plugin.Firebase.Auth --version 3.0.0                
NuGet\Install-Package Plugin.Firebase.Auth -Version 3.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Plugin.Firebase.Auth" Version="3.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Plugin.Firebase.Auth --version 3.0.0                
#r "nuget: Plugin.Firebase.Auth, 3.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Plugin.Firebase.Auth as a Cake Addin
#addin nuget:?package=Plugin.Firebase.Auth&version=3.0.0

// Install Plugin.Firebase.Auth as a Cake Tool
#tool nuget:?package=Plugin.Firebase.Auth&version=3.0.0                

Auth

You can use Firebase Authentication to allow users to sign in to your app using one or more sign-in methods, including email address and password sign-in, and federated identity providers such as Google Sign-in and Facebook Login.

Installation

Nuget

NuGet

Install-Package Plugin.Firebase.Auth

Setup

#if IOS
  FirebaseAuthGoogleImplementation.Initialize();
#elif ANDROID
  FirebaseAuthGoogleImplementation.Initialize("your-google-request-id-token");
#endif
  • The googleRequestIdToken can be accessed at the Google API Console (make sure to use the Client-ID of the Web client)

iOS specifics

  • Enable keychain entitlement in Entitlements.plist:
  <dict>
    <key>keychain-access-groups</key>
    <array>
      <string>$(AppIdentifierPrefix)my.fancy.app</string>
    </array>
  </dict>
  • In case you are using Authentication via Google, add an url scheme to your apps Info.plist:
  <key>CFBundleURLTypes</key>
  <array>
    <dict>
      <key>CFBundleURLSchemes</key>
      <array>
        <string>com.googleusercontent.apps.123456-abcdef</string>
      </array>
    </dict>
  </array>

Android specifics

  • Make sure you have added the SHA-1 fingerprint matching the keystore you've used for signing the app bundle to the android project settings in the firebase console:

firestore_poco.png

  • Call FirebaseAuthImplementation.HandleActivityResultAsync(requestCode, resultCode, data); from MainActivity.OnActivityResult(...)
  • If you are on version 2.0.5 or later, add the following package to your project's .csproj file to prevent build errors:
  <PackageReference Include="Xamarin.AndroidX.Browser" Version="1.6.0.2" />

For more specific instructions take a look at the official Firebase documentation

Usage

Take a look at the documentation for the AdamE.Firebase.iOS.Auth packages, because Plugin.Firebase's code is abstracted but still very similar.

Since code should be documenting itself you can also take a look at the following classes:

Release notes

  • Version 3.0.0
    • Swapped Xamarin.Firebase.iOS.Auth (native SDK 8.10.0) for AdamE.Firebase.iOS.Auth (native SDK 10.24.0)
  • Version 2.0.7
    • Added AddAuthStateListener to FirebaseAuth (PR #246)
  • Version 2.0.6
    • Fix dates in android AuthTokenResultWrapper (issue #244)
  • Version 2.0.5
    • Bump up Xamarin.Firebase.Auth from 121.0.8 to 122.2.0 (issue #131)
  • Version 2.0.4
    • Separating Auth.Google into its own package (PR #210)
  • Version 2.0.3
    • Return FirebaseUser in FirebaseAuthImplementation.CreateUserAsync(email, password) method (issue #183)
  • Version 2.0.2
    • Bump up Xamarin.Google.iOS.SignIn from 5.0.2.3 to 5.0.2.4 (issue #158)
  • Version 2.0.1
    • Remove unnecessary UseMaui property from csproj files
    • Readd net6.0 tfm
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-android31.0 is compatible.  net6.0-ios was computed.  net6.0-ios16.1 is compatible.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Plugin.Firebase.Auth:

Package Downloads
Plugin.Firebase

The plugin includes cross-platform APIs for Firebase Analytics, Auth, Cloud Messaging, Crashlytics, Dynamic Links, Firestore, Cloud Functions, Remote Config and Storage.

Plugin.Firebase.Auth.Google

The plugin includes cross-platform APIs for Firebase Auth.

Plugin.Firebase.Auth.Facebook

The plugin includes cross-platform APIs for Firebase Auth.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.0 20,995 5/29/2024
2.0.7 45,140 1/13/2024
2.0.6 3,943 1/4/2024
2.0.5 5,722 11/22/2023
2.0.4 11,335 10/18/2023
2.0.3 17,013 7/20/2023
2.0.2 19,326 4/27/2023
2.0.1 4,548 3/31/2023
2.0.0 4,592 3/26/2023