Firebase Dynamic Links: mi ez, linkek létrehozása és integráció

Szerző: IT Sectr Megjelenés: 2026-04-29 Olvasási idő: 9 perc

A Firebase Dynamic Links a Google szolgáltatása intelligens linkek létrehozására, amelyek a felhasználót a megfelelő helyre irányítják a mobilalkalmazáson belül vagy a weboldalon, attól függően, hogy az alkalmazás telepítve van-e az eszközön. A Dynamic Links megőrzi az átmenet kontextusát még az alkalmazásboltból történő telepítés utáni első indításkor is. A Firebase Documentation, 2026 szerint a dinamikus linkek egy egységes API-ban kerülnek feldolgozásra, amely automatikusan meghatározza a viselkedést: az alkalmazás megnyitása, a weboldalra lépés vagy az alkalmazás telepítése. A szolgáltatás nélkülözhetetlen a referral programokhoz, onboarding forgatókönyvekhez és marketingkampányokhoz.

Főbb pontok

  • Dynamic Links — intelligens linkek, amelyek automatikusan meghatározzák, hogy telepíteni kell-e az alkalmazást, vagy meg kell nyitni a már telepített alkalmazást a megfelelő képernyőn.
  • Deferred Deep Linking — az átmenet kontextusának megőrzése a telepítés utáni első indításkor: a felhasználó a célképernyőt látja, nem a főképernyőt.
  • Link domain — egyedi domain your-app.page.link formában, amely Firebase Console-ban márkázható.
  • Feldolgozás az ügyfél oldalán — a linkek feldolgozása a Firebase Dynamic Links SDK-n keresztül történik Android és iOS rendszereken, argumentumok átadásával az intent vagy scene számára.
  • Analitika — a Firebase automatikusan gyűjti a kattintások, telepítések és átmenetek statisztikáit a Dynamic Links-en keresztül.

A Firebase Dynamic Links a Google technológiája, amely egyetlen linket hoz létre, amely a kívánt tartalomhoz vezet a mobilalkalmazásban vagy a weboldalon, a viselkedést a platformtól és a telepítés állapotától függően igazítva. A link ellenőrzi, hogy az alkalmazás telepítve van-e az eszközön: ha igen — megnyitja a paraméterek átadásával, ha nem — a Google Play vagy App Store áruházba irányít a telepítéshez, majd telepítés után átirányít a célképernyőre.

Kulcsfontosságú jellemző: Deferred Deep Linking

A Dynamic Links fő előnye a hagyományos deep linkekkel szemben a halasztott mély linkek támogatása. A Deferred Deep Linking azt jelenti, hogy az átmenet kontextusa (a link paraméterei) akkor is megmarad, ha az alkalmazás még nincs telepítve. Amikor a felhasználó telepíti az alkalmazást az áruházból, a Dynamic Links SDK beolvassa a mentett kontextust, és továbbítja a megfelelő képernyőre. E technológia nélkül a felhasználó a telepítés után egyszerűen a főképernyőre kerülne, elveszítve a promóciós kódot, meghívót vagy a konkrét rendelésre mutató linket.

Alkalmazási területek

A Dynamic Links referral programokban használatos új felhasználók bevonzására, a meghívó fiókjához kapcsolva. Marketingkampányok e-mail hírlevelekből és közösségi médiából érkező átmenetekkel a Dynamic Links segítségével mérik pontosan a konverziót. Onboarding forgatókönyvekben a link az új felhasználót egy személyre szabott tartalommal ellátott üdvözlőképernyőre irányítja. Az e-kereskedelemben a termék linkek megőrzik a kontextust, és a termékkártyára vezetnek még a telepítés utáni első indításkor is.

A Dynamic Links működési mechanizmusa több szakaszból áll, amelyek mindegyike eltérő lehet az alkalmazás állapotától függően. Amikor a felhasználó rákattint egy dinamikus linkre, a böngésző kérést küld a Firebase szervernek. A Firebase ellenőrzi, hogy az alkalmazás telepítve van-e intent-filter vagy universal link ellenőrzés segítségével. Ha az alkalmazás telepítve van, a Firebase megnyitja azt a mély link átadásával. Ha nem — átirányít az áruház oldalára vagy a webes verzióra.

Egy dinamikus link anatómiája

Egy szabványos Dynamic Link alap URL-ből, link paraméterekből és opcionális marketing címkékből áll. Az alap URL egy your-app.page.link formátumú domain, amely a Firebase Console-ban van regisztrálva. A mély link paraméterei query paramétereken keresztül vannak megadva: link (cél URL az alkalmazáson belül), apn (Android Package Name), ibi (iOS Bundle ID), st és sd (cím és leírás a közösségi előnézethez). Az utm_source, utm_medium, utm_campaign marketing címkék a Google Analytics-be kerülnek továbbításra nyomon követés céljából.

ParaméterLeírásPélda
linkCél mély linkhttps://yourapp.page.link/product/123
apnAndroid Package Namecom.example.myapp
ibiiOS Bundle IDcom.example.myapp.ios
stKözösségi címKülönleges ajánlat
sdKözösségi leírás30% kedvezmény az első rendelésre

A Firebase Console vizuális felületet biztosít Dynamic Links létrehozásához az Engage > Dynamic Links szakaszban. A konzolban minden link paraméter beállítható, beleértve a mély linket, a webes viselkedést, a közösségi metaadatokat és az UTM címkéket. A link létrehozása után a konzol kész URL-t, valamint kattintási és átmeneti statisztikákat biztosít. Linkek tömeges létrehozásához a Firebase Dynamic Links REST API-t használják OAuth 2.0 hitelesítéssel.

Link létrehozása REST API segítségével

A Dynamic Links programozott létrehozásához POST kérés kerül elküldésre a Firebase Dynamic Links API-nak. A kérés törzse tartalmazza a dynamicLinkInfo-t a mély link paramétereivel, platformbeállításokkal és közösségi metaadatokkal. Az API egy kész URL-t ad vissza https://your-app.page.link/abc123 formában. Hosszú élettartamú linkekhez a suffix.option = UNIQUE használatos — egyedi utótaggal rendelkező rövid linkek. Ideiglenes linkekhez — SHORT, ütközés lehetőségével.

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: "Nyári akció",
            socialDescription: "Akár 50% kedvezmény a hónap végéig"
        }
    },
    suffix: { option: "UNIQUE" }
}

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

Rövid linkek és UTM címkék

A Dynamic Links automatikusan rövid URL-eket generál, amelyek 6–8 karakter hosszúságúak a domain után, így alkalmasak SMS-ben és közösségi médiában való használatra. Az UTM paraméterek az utmParameters mezőn keresztül vagy közvetlenül a link paraméterben adhatók hozzá. A Firebase automatikusan összekapcsolja a Dynamic Links kattintásokat a Google Analytics for Firebase-szel, lehetővé téve a referral forgalom és a kampányattribúció nyomon követését.

Dynamic Links integrálása Androidban

A Dynamic Links konfigurálása Androidban magában foglalja a Firebase SDK hozzáadását, az intent-filter beállítását a mély linkeket fogadó aktivitáshoz, és a linkek feldolgozását a Firebase Dynamic Links SDK-n keresztül. Az SDK telepítése és a google-services.json hozzáadása után regisztrálni kell az aktivitást az AndroidManifest.xml-ben intent-filter-rel az alkalmazás domainjéről érkező linkek feldolgozásához.

Intent-filter beállítása az AndroidManifest-ben

A Dynamic Links-et feldolgozó aktivitásnak intent-filter-rel kell rendelkeznie a VIEW művelethez és a DEFAULT és BROWSABLE kategóriákhoz. Az AndroidManifest.xml tartalmaz egy data tag-ot android:scheme, android:host és android:pathPrefix paraméterekkel, amelyek megfelelnek a mély linknek. A page.link domainről érkező linkek feldolgozásához egy intent-filter is hozzáadásra kerül https sémával és a Dynamic Links domain hostjával.

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>

Link feldolgozása kódban

Az intent-filter beállítása után a bejövő Dynamic Link-et fel kell dolgozni az aktivitás kódjában. A FirebaseDynamicLinks API kinyeri a linket az intent-ből, és egy PendingDynamicLinkData objektumot ad vissza a kinyert paraméterekkel. A getLink metódus visszaadja a cél mély linket, amely elemezhető és felhasználható navigációra. Fontos, hogy a linket hideg induláskor (getIntent az onCreate-ben) és meleg induláskor (onNewIntent) is fel kell dolgozni.

Dynamic Links integrálása iOS-ben

A Dynamic Links konfigurálása iOS-ben konfigurációt igényel mind a Firebase oldalán, mind az Xcode projektben. Az APNs kulcsot fel kell tölteni a Firebase Console-ba, a Firebase SDK-t hozzá kell adni Swift Package Manager vagy CocoaPods segítségével, és be kell állítani az App Delegate-et az Universal Linkek feldolgozásához. Az iOS Dynamic Links az Universal Linkeket használja a zökkenőmentes átmenethez a böngésző és az alkalmazás között, köztes oldal nélkül.

Universal Linkek beállítása

Az Universal Linkek az Apple technológiája, amely összeköti a domaint a mobilalkalmazással. Az apple-app-site-association (AASA) fájl a szerverre kerül feltöltésre a https://your-app.page.link/apple-app-site-association címen. A Firebase automatikusan létrehozza és karbantartja ezt a fájlt a Dynamic Links domainhez. Az Xcode-ban engedélyezni kell az Associated Domains funkciót, és meg kell adni az applinks:your-app.page.link címet a projekt Capabilities részében.

Link feldolgozása Firebase SDK-n keresztül

iOS esetén a Dynamic Links feldolgozása a Firebase SDK-n keresztül történik az App Delegate-ben vagy Scene Delegate-ben. Az application:continueUserActivity: metódus elkapja a bejövő Universal Linket, és továbbítja a Firebase Dynamic Links API-nak, amely kinyeri a cél linket és paramétereket. A Firebase SDK automatikusan feldolgozza a Deferred Deep Linkeket, a telepítési adatokat a Firebase Installation API rövid távú tárolóján keresztül kérve le.

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)
                }
            }
    }
}

Implementációs példa Kotlinban

Nézzünk meg egy teljes példát a Dynamic Link feldolgozására egy Android alkalmazásban Kotlin nyelven. A MainActivity beolvassa a bejövő Dynamic Linket mind hideg, mind meleg induláskor. A link paraméterekre bomlik, amelyek a navigációhoz használatosak a megfelelő képernyőre, argumentumok átadásával. A példa bemutatja a promóciós oldalra mutató link feldolgozását a promóció azonosítójával.

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", "Hiba a link feldolgozása során", e)
            }
    }
}

Dynamic Links tesztelése

A Dynamic Links teszteléséhez a Firebase Console használatos, ahol létrehozható egy teszt link, amely elküldhető az eszközre üzenetküldőn vagy e-mailen keresztül. A Firebase Dynamics Links Debugger a https://your-app.page.link/?d=1 URL-en érhető el, és részletes információkat jelenít meg a link viselkedéséről. A Deferred Deep Linkek tesztelésekor meg kell győződni arról, hogy az alkalmazás el van távolítva, és telepítés után a link a megfelelő képernyőre vezet az átadott paraméterekkel.

Gyakran ismételt kérdések

Mi a különbség a Dynamic Links és a hagyományos deep linkek között?

A hagyományos deep linkek csak telepített alkalmazás esetén működnek, és nem őrzik meg a kontextust telepítés után. A Dynamic Links támogatja a Deferred Deep Linkinget — a felhasználó telepíti az alkalmazást, és azonnal a célképernyőre kerül a mentett link paraméterekkel.

Szükséges-e szerver a Dynamic Links működéséhez?

Nincs szükség szerverre a linkek létrehozásához és feldolgozásához — minden művelet a Firebase Console, REST API vagy Firebase SDK segítségével történik az ügyfélen. Tömeges linkgeneráláshoz a REST API ajánlott, de a konzol alkalmas kézi létrehozásra.

Mennyi ideig él egy Dynamic Link?

A Dynamic Links-nek nincs lejárati ideje — örökre a Firebase-ben tárolódnak, ha nem törlik őket manuálisan. Az UNIQUE utótagú rövid linkek korlátlan ideig léteznek. Javasolt egyedi linkeket létrehozni minden kampányhoz a pontos attribúció érdekében.

Működnek-e a Dynamic Links internet nélkül?

A Dynamic Link feldolgozásához internetkapcsolat szükséges a kattintás szakaszában, mivel a Firebase szerver ellenőrzi az alkalmazás telepítési állapotát. A link feldolgozása után az adatok intent vagy Universal Link segítségével kerülnek továbbításra az alkalmazásba, és hálózat nélkül is elérhetővé válnak.

Mennyibe kerülnek a Firebase Dynamic Links?

A Firebase Dynamic Links ingyenesek a Spark csomag keretein belül. A Blaze csomagban projektjelenként napi 50 ezer kattintás korlát van, további díjak nélkül. A korlát túllépése blokkolja az új linkek létrehozását a következő napig.

Összefoglalás

  • Firebase Dynamic Links — intelligens linkek, amelyek a felhasználót az alkalmazásba vagy weboldalra irányítják, alkalmazás hiányában pedig az áruházba, a kontextus telepítés utáni megőrzésével.
  • Deferred Deep Linking — a kulcsfontosságú előny, amely lehetővé teszi a kontextus (promóciós kód, meghívó, termék link) átadását a telepítés utáni első indításkor.
  • A link felépítése magában foglalja az alap domaint (your-app.page.link), a mély link paramétereket, a platformbeállításokat és a közösségi metaadatokat az előnézethez.
  • Linkek létrehozása Firebase Console, REST API vagy Firebase SDK segítségével történik, UTM címkék támogatásával a Google Analytics integrációhoz.
  • Integráció Androidban intent-filter beállítást igényel az AndroidManifest-ben és feldolgozást a FirebaseDynamicLinks API-n keresztül, hideg és meleg indulás támogatásával.
  • Integráció iOS-ben Universal Linkeket használ AASA fájllal, Associated Domains-szel és feldolgozással a DynamicLinks SDK-n keresztül az AppDelegate-ben vagy SceneDelegate-ben.
  • Ingyenes napi 50 ezer kattintásig, lejárati idő nélküli linkek, egyedi domain létrehozásának lehetőségével a linkek márkázásához.

Kulcsrakész mobilalkalmazást fejlesztünk

Az IT Sectr 2017 óta készít iOS és Android alkalmazásokat induló vállalkozásoknak és vállalkozásoknak. Tanácsot adunk, és a legjobb megoldást javasoljuk.

Projekt megbeszélése

Olvassa el is