Firebase Dynamic Links: Was es ist, Link-Erstellung und Integration

Autor: IT Sectr Veröffentlicht: 2026-04-29 Lesezeit: 9 Min.

Firebase Dynamic Links ist ein Google-Dienst zum Erstellen intelligenter Links, die den Benutzer an die richtige Stelle innerhalb einer mobilen App oder auf eine Website führen, je nachdem, ob die App auf dem Gerät installiert ist. Dynamic Links bewahren den Übergangskontext sogar beim ersten Start nach der Installation aus dem App Store. Laut der Firebase-Dokumentation, 2026 werden dynamische Links in einer einzigen API verarbeitet, die automatisch das Verhalten bestimmt: App öffnen, zur Website gehen oder App installieren. Der Dienst ist unverzichtbar für Empfehlungsprogramme, Onboarding-Szenarien und Marketingkampagnen.

Wichtige Punkte

  • Dynamic Links — intelligente Links, die automatisch bestimmen, ob die App installiert oder eine bereits installierte App auf dem gewünschten Bildschirm geöffnet werden soll.
  • Deferred Deep Linking — Bewahrung des Übergangskontexts beim ersten Start nach der Installation: Der Benutzer sieht den Zielbildschirm, nicht den Hauptbildschirm.
  • Link-Domain — eine benutzerdefinierte Domain wie your-app.page.link, die in der Firebase Console gebrandet werden kann.
  • Clientseitige Verarbeitung — Links werden über das Firebase Dynamic Links SDK für Android und iOS verarbeitet, wobei Argumente an intent oder scene übergeben werden.
  • Analytics — Firebase sammelt automatisch Statistiken über Klicks, Installationen und Übergänge über Dynamic Links.

Firebase Dynamic Links ist eine Google-Technologie, die einen einzigen Link erstellt, der zum gewünschten Inhalt in einer mobilen App oder Website führt und das Verhalten je nach Plattform und Installationsstatus anpasst. Der Link prüft, ob die App auf dem Gerät installiert ist: wenn ja — öffnet er sie mit übergebenen Parametern, wenn nein — leitet er zu Google Play oder dem App Store zur Installation weiter und leitet nach der Installation zum Zielbildschirm weiter.

Schlüsselfunktion: Deferred Deep Linking

Der Hauptvorteil von Dynamic Links gegenüber regulären Deep Links ist die Unterstützung für verzögerte Deep Links. Deferred Deep Linking bedeutet, dass der Übergangskontext (Link-Parameter) erhalten bleibt, selbst wenn die App noch nicht installiert ist. Wenn der Benutzer die App aus dem Store installiert, liest das Dynamic Links SDK den gespeicherten Kontext und übergibt ihn an den gewünschten Bildschirm. Ohne diese Technologie würde der Benutzer nach der Installation einfach auf dem Hauptbildschirm landen und den Promo-Code, die Einladung oder den Link zu einer bestimmten Bestellung verlieren.

Anwendungsfälle

Dynamic Links werden in Empfehlungsprogrammen verwendet, um neue Benutzer mit Zuordnung zum Konto des Einladenden zu gewinnen. Marketingkampagnen mit Übergängen aus E-Mail-Newslettern und sozialen Netzwerken nutzen Dynamic Links zur genauen Konversionsmessung. In Onboarding-Szenarien führt der Link einen neuen Benutzer zu einem Willkommensbildschirm mit personalisiertem Inhalt. Im E-Commerce bewahren Produktlinks den Kontext und führen sogar beim ersten Start nach der Installation zur Produktkarte.

Der Funktionsmechanismus von Dynamic Links besteht aus mehreren Phasen, die je nach App-Zustand variieren können. Wenn ein Benutzer auf einen dynamischen Link klickt, sendet der Browser eine Anfrage an den Firebase-Server. Firebase prüft, ob die App installiert ist, mittels intent-filter oder Universal-Link-Überprüfung. Wenn die App installiert ist, öffnet Firebase sie mit dem übergebenen Deep Link. Wenn nicht — leitet er zur Store-Seite oder Webversion weiter.

Aufbau eines dynamischen Links

Ein Standard-Dynamic-Link besteht aus einer Basis-URL, Link-Parametern und optionalen Marketing-Tags. Die Basis-URL ist eine Domain wie your-app.page.link, die in der Firebase Console registriert ist. Deep-Link-Parameter werden über Query-Parameter festgelegt: link (Ziel-URL innerhalb der App), apn (Android Package Name), ibi (iOS Bundle ID), st und sd (Titel und Beschreibung für die Social-Vorschau). Marketing-Tags utm_source, utm_medium, utm_campaign werden zur Verfolgung an Google Analytics übergeben.

ParameterBeschreibungBeispiel
linkZiel-Deep-Linkhttps://yourapp.page.link/product/123
apnAndroid Package Namecom.example.myapp
ibiiOS Bundle IDcom.example.myapp.ios
stSocial-TitelBesonderes Angebot
sdSocial-Beschreibung30% Rabatt auf Ihre erste Bestellung

Firebase Console bietet eine visuelle Oberfläche zum Erstellen von Dynamic Links im Bereich Engage > Dynamic Links. In der Konsole können Sie alle Link-Parameter festlegen, einschließlich Deep Link, Webverhalten, soziale Metadaten und UTM-Tags. Nach der Erstellung des Links stellt die Konsole eine gebrauchsfertige URL sowie Statistiken zu Klicks und Übergängen bereit. Für die Massenerstellung von Links wird die Firebase Dynamic Links REST API mit OAuth 2.0-Authentifizierung verwendet.

Erstellen eines Links über die REST API

Für die programmatische Erstellung von Dynamic Links wird eine POST-Anfrage an die Firebase Dynamic Links API gesendet. Der Anforderungstext enthält dynamicLinkInfo mit Deep-Link-Parametern, Plattformeinstellungen und sozialen Metadaten. Die API gibt eine gebrauchsfertige URL wie https://your-app.page.link/abc123 zurück. Für langlebige Links wird suffix.option = UNIQUE verwendet — kurze Links mit einem eindeutigen Suffix. Für temporäre Links — SHORT, mit möglichen Kollisionen.

js
const axios = require("axios")

const apiUrl = "https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=API_KEY"

const data = {
    dynamicLinkInfo: {
        domainUriPrefix: "https://yourapp.page.link",
        link: "https://yourapp.com/promo/summer",
        androidInfo: { androidPackageName: "com.example.myapp" },
        iosInfo: { iosBundleId: "com.example.myapp.ios" },
        socialMetaTagInfo: {
            socialTitle: "Sommeraktion",
            socialDescription: "Bis zu 50% Rabatt bis Monatsende"
        }
    },
    suffix: { option: "UNIQUE" }
}

axios.post(apiUrl, data)
    .then(res => console.log(res.data.shortLink))
    .catch(err => console.error(err))

Kurze Links und UTM-Tags

Dynamic Links generieren automatisch kurze URLs mit 6–8 Zeichen nach der Domain, was sie für die Verwendung in SMS und sozialen Netzwerken geeignet macht. UTM-Parameter werden über das Feld utmParameters oder direkt im Link-Parameter hinzugefügt. Firebase verknüpft Klicks auf Dynamic Links automatisch mit Google Analytics für Firebase, sodass Sie Empfehlungsverkehr und Kampagnenzuordnung verfolgen können.

Integration von Dynamic Links in Android

Einrichten von Dynamic Links in Android umfasst das Hinzufügen des Firebase SDK, das Konfigurieren des intent-filter für die Activity, die Deep Links empfängt, und das Verarbeiten von Links über das Firebase Dynamic Links SDK. Nach der Installation des SDK und dem Hinzufügen von google-services.json müssen Sie die Activity in AndroidManifest.xml mit einem intent-filter zum Verarbeiten von Links von Ihrer App-Domain registrieren.

Einrichten von intent-filter in AndroidManifest

Die Activity, die Dynamic Links verarbeitet, muss einen intent-filter für die VIEW-Aktion und die Kategorien DEFAULT und BROWSABLE haben. AndroidManifest.xml enthält ein data-Tag mit android:scheme, android:host und android:pathPrefix, die Ihrem Deep Link entsprechen. Zum Verarbeiten von Links von der page.link-Domain wird auch ein intent-filter mit dem https-Schema und dem Host Ihrer Dynamic-Links-Domain hinzugefügt.

xml
<!-- AndroidManifest.xml -->
<activity android:name=".MainActivity">
    <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:scheme="https"
            android:host="yourapp.com"
            android:pathPrefix="/promo" />
    </intent-filter>
</activity>

Verarbeiten des Links im Code

Nach dem Einrichten des intent-filter müssen Sie den eingehenden Dynamic Link im Activity-Code verarbeiten. Die FirebaseDynamicLinks API empfängt den Link aus dem intent und gibt ein PendingDynamicLinkData-Objekt mit extrahierten Parametern zurück. Die Methode getLink gibt den Ziel-Deep-Link zurück, der geparst und für die Navigation verwendet werden kann. Es ist wichtig, den Link sowohl beim Kaltstart (über getIntent in onCreate) als auch beim Warmstart (über onNewIntent) zu verarbeiten.

Integration von Dynamic Links in iOS

Einrichten von Dynamic Links in iOS erfordert Konfiguration sowohl auf der Firebase-Seite als auch im Xcode-Projekt. Sie müssen einen APNs-Schlüssel in die Firebase Console hochladen, das Firebase SDK über Swift Package Manager oder CocoaPods hinzufügen und den App Delegate für die Verarbeitung von Universal Links konfigurieren. Dynamic Links in iOS verwenden Universal Links für einen nahtlosen Übergang zwischen Browser und App ohne Zwischenseite.

Einrichten von Universal Links

Universal Links ist eine Apple-Technologie, die Ihre Domain mit einer mobilen App verbindet. Die apple-app-site-association (AASA)-Datei wird auf den Server unter https://your-app.page.link/apple-app-site-association hochgeladen. Firebase erstellt und pflegt diese Datei automatisch für Ihre Dynamic-Links-Domain. In Xcode müssen Sie Associated Domains aktivieren und applinks:your-app.page.link in den Capabilities des Projekts angeben.

Verarbeiten des Links über das Firebase SDK

Für iOS erfolgt die Dynamic-Links-Verarbeitung über das Firebase SDK im App Delegate oder Scene Delegate. Die Methode application:continueUserActivity: fängt den eingehenden Universal Link ab und übergibt ihn an die Firebase Dynamic Links API, die den Ziellink und die Parameter extrahiert. Das Firebase SDK verarbeitet automatisch Deferred Deep Links, indem es Installationsdaten über den Kurzzeitspeicher der Firebase Installation API anfordert.

swift
import FirebaseDynamicLinks

class AppDelegate: UIApplicationDelegate {

    func application(
        _ application: UIApplication,
        continue userActivity: NSUserActivity,
        restorationHandler: @escaping
            ([UIUserActivityRestoring]?) -> Void
    ) -> Bool {
        return DynamicLinks.dynamicLinks()
            .handleUniversalLink(userActivity.webpageURL!) {
                dynamicLink, error in
                if let link = dynamicLink?.url {
                    self.handleDeepLink(link)
                }
            }
    }
}

Implementierungsbeispiel in Kotlin

Betrachten wir ein vollständiges Beispiel der Verarbeitung eines Dynamic Links in einer Android-App mit Kotlin. MainActivity liest den eingehenden Dynamic Link sowohl beim Kalt- als auch beim Warmstart der App. Der Link wird in Parameter zerlegt, die für die Navigation zum gewünschten Bildschirm mit übergebenen Argumenten verwendet werden. Das Beispiel zeigt die Verarbeitung eines Links zu einer Aktionsseite mit einer Promo-Kampagnen-ID.

kotlin
class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        handleDynamicLink(intent)
    }

    override fun onNewIntent(intent: Intent) {
        super.onNewIntent(intent)
        handleDynamicLink(intent)
    }

    private fun handleDynamicLink(intent: Intent) {
        FirebaseDynamicLinks.getInstance()
            .getDynamicLink(intent)
            .addOnSuccessListener { data ->
                val deepLink = data?.link ?: return@addOnSuccessListener
                val promoId = deepLink
                    .getQueryParameter("promoId") ?: ""
                if (promoId.isNotEmpty()) {
                    navigateToPromoScreen(promoId)
                }
            }
            .addOnFailureListener { e ->
                Log.e("DL", "Fehler bei der Linkverarbeitung", e)
            }
    }
}

Testen von Dynamic Links

Zum Testen von Dynamic Links wird die Firebase Console verwendet, wo Sie einen Testlink erstellen und über Messenger oder E-Mail an ein Gerät senden können. Der Firebase Dynamic Links Debugger ist unter https://your-app.page.link/?d=1 verfügbar und zeigt detaillierte Informationen über das Linkverhalten an. Beim Testen von Deferred Deep Links müssen Sie sicherstellen, dass die App deinstalliert ist und der Link nach der Installation mit den übergebenen Parametern zum richtigen Bildschirm führt.

Häufig gestellte Fragen

Was ist der Unterschied zwischen Dynamic Links und regulären Deep Links?

Reguläre Deep Links funktionieren nur, wenn die App installiert ist, und bewahren den Kontext nach der Installation nicht. Dynamic Links unterstützen Deferred Deep Linking — der Benutzer installiert die App und gelangt sofort mit den gespeicherten Link-Parametern auf den Zielbildschirm.

Benötige ich einen Server, damit Dynamic Links funktionieren?

Für die Erstellung und Verarbeitung von Links ist kein Server erforderlich — alle Vorgänge werden über die Firebase Console, die REST API oder das Firebase SDK auf der Clientseite durchgeführt. Für die Massengenerierung von Links wird die REST API empfohlen, aber die Konsole ist für die manuelle Erstellung geeignet.

Wie lange lebt ein Dynamic Link?

Dynamic Links haben kein Ablaufdatum — sie werden dauerhaft in Firebase gespeichert, sofern sie nicht manuell gelöscht werden. Kurze Links mit dem UNIQUE-Suffix existieren unbegrenzt. Es wird empfohlen, für jede Kampagne eindeutige Links zur genauen Zuordnung zu erstellen.

Funktionieren Dynamic Links ohne Internet?

Die Verarbeitung eines Dynamic Links erfordert eine Internetverbindung beim Klick, da der Firebase-Server den Installationsstatus der App überprüft. Nach der Verarbeitung des Links werden die Daten über intent oder Universal Link an die App übergeben und sind auch offline verfügbar.

Wie viel kosten Firebase Dynamic Links?

Firebase Dynamic Links sind im Spark-Plan kostenlos. Im Blaze-Plan gibt es ein Limit von 50.000 Klicks pro Tag pro Projekt ohne zusätzliche Gebühren. Bei Überschreitung des Limits wird die Erstellung neuer Links bis zum nächsten Tag blockiert.

Zusammenfassung

  • Firebase Dynamic Links — intelligente Links, die Benutzer zur App oder Website führen und bei fehlender App mit Kontexterhalt nach Installation zum Store führen.
  • Deferred Deep Linking — der Hauptvorteil, der die Übergabe von Kontext (Promo-Code, Einladung, Produktlink) beim ersten Start nach der Installation ermöglicht.
  • Link-Struktur umfasst eine Basisdomain (your-app.page.link), Deep-Link-Parameter, Plattformeinstellungen und soziale Metadaten für die Vorschau.
  • Link-Erstellung erfolgt über die Firebase Console, REST API oder das Firebase SDK mit Unterstützung für UTM-Tags zur Integration mit Google Analytics.
  • Integration in Android erfordert die Einrichtung eines intent-filter in AndroidManifest und Verarbeitung über die FirebaseDynamicLinks API mit Unterstützung für Kalt- und Warmstart.
  • Integration in iOS verwendet Universal Links mit AASA-Datei, Associated Domains und Verarbeitung über das DynamicLinks SDK in AppDelegate oder SceneDelegate.
  • Kostenlos bis zu 50.000 Klicks pro Tag, keine Link-Ablaufzeit, mit der Möglichkeit, eine benutzerdefinierte Domain für das Link-Branding zu erstellen.

Wir entwickeln eine mobile Applikation schlüsselfertig

IT Sectr entwickelt seit 2017 iOS- und Android-Apps für Startups und Unternehmen. Wir beraten Sie und schlagen die beste Lösung vor.

Projekt besprechen

Lesen Sie auch