Plugin.Firebase.DynamicLinks 3.1.1

Dynamic Links

With Firebase Dynamic Links, you can give new users of your app a personalized onboarding experience, and thus increase user sign-ups, user retention, and long-term user engagement.

Dynamic Links are links into an app that work whether or not users have installed the app yet. When users open a Dynamic Link into an app that is not installed, the app's App- or Playstore page opens, where users can install the app. After users install and open the app, the app handles the link.

Installation

Nuget

NuGet

Install-Package Plugin.Firebase.DynamicLinks

Setup

iOS specifics

  • Go to the firebase console -> Project Settings -> choose your iOS app -> enter Appstore ID and Team ID (if not filled out already)
  • Go to developers.apple.com -> Certificates, Identifiers & Profiles -> App IDs -> choose your app and enable 'Associated Domains'
  • Go to provisioning profiles -> choose your profile, make it valid again, download and double tap it
  • add associated domains to your apps Entitlements.plist:
  <key>com.apple.developer.associated-domains</key>
  <array>
    <string>applinks:myfancyapp.page.link</string>
  </array>
  • add url scheme to your apps Info.plist:
  <key>CFBundleURLTypes</key>
  <array>
    <dict>
      <key>CFBundleURLName</key>
      <string>Bundle ID</string>
      <key>CFBundleURLSchemes</key>
      <array>
        <string>my.fancy.app</string>
      </array>
      <key>CFBundleURLTypes</key>
      <string>Editor</string>
    </dict>
  </array>

Android specifics

  • use the following command to generate SHA-1 and SHA-256 fingerprints:
  keytool -exportcert -list -v -alias <your-key-name> -keystore <path-to-production-keystore>
  • Go to firebase console -> Project Settings -> choose your android app -> insert the SHA-1 and SHA-256 fingerprints
  • Call FirebaseDynamicLinksImplementation.HandleDynamicLinkAsync(intent) from MainActivity.OnCreate(...) and MainActivity.OnNewIntent(...)
  • Add your MainActivity to the <application> tag in your apps AndroidManifest.xml:
  <activity
    android:name="my.fancy.app.MainActivity"
    android:label="@string/app_name"
    android:icon="@mipmap/icon"
    android:theme="@style/MainTheme"
    android:configChanges="screenSize|orientation|uiMode|screenLayout|smallestScreenSize"
    android:launchMode="singleTask">
    <intent-filter>
      <action android:name="android.intent.action.MAIN" />
      <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
      <action android:name="android.intent.action.VIEW" />
      <category android:name="android.intent.category.DEFAULT" />
      <category android:name="android.intent.category.BROWSABLE" />
      <data android:host="myfancyapp.page.link" android:scheme="https" />
    </intent-filter>
  </activity>

Usage

Take a look at the documentation for the AdamE.Firebase.iOS.DynamicLinks 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.1.1
    • Using AdamE.Firebase.iOS.* minimum version 11
  • Version 3.1.0
    • Update to .net8
  • Version 3.0.0
    • Swapped Xamarin.Firebase.iOS.DynamicLinks (native SDK 8.10.0) for AdamE.Firebase.iOS.DynamicLinks (native SDK 10.24.0)
  • Version 2.0.1
    • Remove unnecessary UseMaui property from csproj files
    • Readd net6.0 tfm

Showing the top 20 packages that depend on Plugin.Firebase.DynamicLinks.

Packages 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.
1

.NET 8.0

  • No dependencies.

.NET 8.0

.NET 8.0

Version Downloads Last updated
3.1.1 1 07/04/2025
3.1.0 0 11/09/2024
3.0.0 0 05/29/2024
2.0.1 0 03/31/2023
2.0.0 0 03/26/2023