Firebase Dynamic Links: apa itu, pembuatan tautan dan integrasi

Penulis: IT Sectr Diterbitkan: 2026-04-29 Waktu membaca: 9 mnt

Firebase Dynamic Links adalah layanan Google untuk membuat tautan pintar yang mengarahkan pengguna ke tempat yang tepat di dalam aplikasi mobile atau situs web, tergantung pada apakah aplikasi sudah terinstal di perangkat. Dynamic Links mempertahankan konteks transisi bahkan saat pertama kali dijalankan setelah instalasi dari toko aplikasi. Menurut Firebase Documentation, 2026, tautan dinamis diproses dalam API tunggal yang secara otomatis menentukan perilaku: membuka aplikasi, pergi ke situs, atau menginstal aplikasi. Layanan ini sangat diperlukan untuk program rujukan, skenario onboarding, dan kampanye pemasaran.

Poin utama

  • Dynamic Links — tautan pintar yang secara otomatis menentukan apakah perlu menginstal aplikasi atau membuka aplikasi yang sudah terinstal di layar yang tepat.
  • Deferred Deep Linking — mempertahankan konteks transisi saat pertama kali dijalankan setelah instalasi: pengguna melihat layar target, bukan layar utama.
  • Domain tautan — domain kustom berbentuk your-app.page.link yang dapat dibranding di Firebase Console.
  • Pemrosesan sisi klien — tautan diproses melalui Firebase Dynamic Links SDK untuk Android dan iOS dengan meneruskan argumen ke intent atau scene.
  • Analitik — Firebase secara otomatis mengumpulkan statistik klik, instalasi, dan transisi melalui Dynamic Links.

Firebase Dynamic Links adalah teknologi Google yang membuat satu tautan yang mengarah ke konten yang diinginkan di aplikasi mobile atau situs web, menyesuaikan perilaku tergantung pada platform dan status instalasi. Tautan memeriksa apakah aplikasi terinstal di perangkat: jika ya — membukanya dengan meneruskan parameter, jika tidak — mengarahkan ke Google Play atau App Store untuk instalasi, dan setelah instalasi mengarahkan ke layar target.

Fitur utama: Deferred Deep Linking

Keunggulan utama Dynamic Links dibandingkan tautan dalam biasa adalah dukungan untuk tautan dalam yang ditangguhkan. Deferred Deep Linking berarti konteks transisi (parameter tautan) tetap dipertahankan meskipun aplikasi belum diinstal. Saat pengguna menginstal aplikasi dari toko, Dynamic Links SDK membaca konteks yang disimpan dan meneruskannya ke layar yang tepat. Tanpa teknologi ini, pengguna setelah instalasi hanya akan sampai di layar utama, kehilangan kode promosi, undangan, atau tautan ke pesanan tertentu.

Bidang aplikasi

Dynamic Links digunakan dalam program rujukan untuk menarik pengguna baru dengan tautan ke akun pengundang. Kampanye pemasaran dengan transisi dari buletin email dan media sosial menggunakan Dynamic Links untuk mengukur konversi secara akurat. Dalam skenario onboarding, tautan mengarahkan pengguna baru ke layar selamat datang dengan konten yang dipersonalisasi. Di e-commerce, tautan produk mempertahankan konteks dan mengarah ke halaman produk bahkan saat pertama kali dijalankan setelah instalasi.

Mekanisme kerja Dynamic Links terdiri dari beberapa tahap, yang masing-masing dapat bervariasi tergantung pada status aplikasi. Saat pengguna mengklik tautan dinamis, browser mengirim permintaan ke server Firebase. Firebase memeriksa apakah aplikasi terinstal melalui verifikasi intent-filter atau universal link. Jika aplikasi terinstal, Firebase membukanya dengan meneruskan tautan dalam. Jika tidak — mengarahkan ke halaman toko atau versi web.

Anatomi tautan dinamis

Dynamic Link standar terdiri dari URL dasar, parameter tautan, dan tag pemasaran opsional. URL dasar adalah domain berbentuk your-app.page.link yang terdaftar di Firebase Console. Parameter tautan dalam ditentukan melalui parameter query: link (URL target di dalam aplikasi), apn (Android Package Name), ibi (iOS Bundle ID), st dan sd (judul dan deskripsi untuk pratinjau sosial). Tag pemasaran utm_source, utm_medium, utm_campaign diteruskan ke Google Analytics untuk pelacakan.

ParameterDeskripsiContoh
linkTautan dalam targethttps://yourapp.page.link/product/123
apnAndroid Package Namecom.example.myapp
ibiiOS Bundle IDcom.example.myapp.ios
stJudul sosialPenawaran khusus
sdDeskripsi sosialDiskon 30% untuk pesanan pertama

Firebase Console menyediakan antarmuka visual untuk membuat Dynamic Links di bagian Engage > Dynamic Links. Di konsol, semua parameter tautan dapat diatur, termasuk tautan dalam, perilaku web, metadata sosial, dan tag UTM. Setelah tautan dibuat, konsol menyediakan URL siap pakai serta statistik klik dan transisi. Untuk pembuatan tautan massal, digunakan REST API Firebase Dynamic Links dengan autentikasi OAuth 2.0.

Membuat tautan melalui REST API

Untuk pembuatan Dynamic Links secara terprogram, digunakan permintaan POST ke Firebase Dynamic Links API. Isi permintaan berisi dynamicLinkInfo dengan parameter tautan dalam, pengaturan platform, dan metadata sosial. API mengembalikan URL siap pakai berbentuk https://your-app.page.link/abc123. Untuk tautan berumur panjang, digunakan suffix.option = UNIQUE — tautan pendek dengan sufiks unik. Untuk tautan sementara — SHORT, dengan kemungkinan tabrakan.

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: "Promosi musim panas",
            socialDescription: "Diskon hingga 50% hingga akhir bulan"
        }
    },
    suffix: { option: "UNIQUE" }
}

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

Tautan pendek dan tag UTM

Dynamic Links secara otomatis menghasilkan URL pendek dengan panjang 6–8 karakter setelah domain, membuatnya cocok untuk digunakan di SMS dan media sosial. Parameter UTM ditambahkan melalui bidang utmParameters atau langsung di parameter tautan. Firebase secara otomatis menghubungkan klik Dynamic Links dengan Google Analytics untuk Firebase, memungkinkan pelacakan lalu lintas rujukan dan atribusi kampanye.

Integrasi Dynamic Links di Android

Konfigurasi Dynamic Links di Android mencakup penambahan Firebase SDK, konfigurasi intent-filter untuk aktivitas yang menerima tautan dalam, dan pemrosesan tautan melalui Firebase Dynamic Links SDK. Setelah menginstal SDK dan menambahkan google-services.json, aktivitas harus didaftarkan di AndroidManifest.xml dengan intent-filter untuk memproses tautan dari domain aplikasi.

Konfigurasi intent-filter di AndroidManifest

Aktivitas yang memproses Dynamic Links harus memiliki intent-filter untuk tindakan VIEW dan kategori DEFAULT dan BROWSABLE. AndroidManifest.xml berisi tag data dengan android:scheme, android:host, dan android:pathPrefix yang sesuai dengan tautan dalam Anda. Untuk memproses tautan dari domain page.link, intent-filter dengan skema https dan host domain Dynamic Links Anda juga ditambahkan.

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>

Memproses tautan dalam kode

Setelah mengonfigurasi intent-filter, Dynamic Link yang masuk harus diproses dalam kode aktivitas. FirebaseDynamicLinks API mengambil tautan dari intent dan mengembalikan objek PendingDynamicLinkData dengan parameter yang diekstrak. Metode getLink mengembalikan tautan dalam target yang dapat dianalisis dan digunakan untuk navigasi. Penting untuk memproses tautan baik saat start dingin (melalui getIntent di onCreate) maupun start hangat (melalui onNewIntent).

Integrasi Dynamic Links di iOS

Konfigurasi Dynamic Links di iOS memerlukan konfigurasi baik di sisi Firebase maupun di proyek Xcode. Kunci APNs harus diunggah di Firebase Console, Firebase SDK ditambahkan melalui Swift Package Manager atau CocoaPods, dan App Delegate dikonfigurasi untuk memproses Universal Links. Dynamic Links di iOS menggunakan Universal Links untuk transisi mulus antara browser dan aplikasi tanpa halaman perantara.

Konfigurasi Universal Links

Universal Links adalah teknologi Apple yang menghubungkan domain Anda dengan aplikasi mobile. File apple-app-site-association (AASA) dimuat di server di alamat https://your-app.page.link/apple-app-site-association. Firebase secara otomatis membuat dan memelihara file ini untuk domain Dynamic Links Anda. Di Xcode, Associated Domains harus diaktifkan dan applinks:your-app.page.link ditentukan di Capabilities proyek.

Memproses tautan melalui Firebase SDK

Untuk iOS, pemrosesan Dynamic Links dilakukan melalui Firebase SDK di App Delegate atau Scene Delegate. Metode application:continueUserActivity: mencegat Universal Link yang masuk dan meneruskannya ke Firebase Dynamic Links API, yang mengekstrak tautan target dan parameter. Firebase SDK secara otomatis memproses Deferred Deep Links, meminta data instalasi melalui penyimpanan jangka pendek Firebase Installation API.

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

Contoh implementasi di Kotlin

Mari kita lihat contoh lengkap pemrosesan Dynamic Link di aplikasi Android dengan Kotlin. MainActivity membaca Dynamic Link yang masuk baik saat start dingin maupun start hangat aplikasi. Tautan diuraikan menjadi parameter yang digunakan untuk navigasi ke layar yang tepat dengan meneruskan argumen. Contoh ini menunjukkan pemrosesan tautan ke halaman promosi dengan ID promosi.

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", "Kesalahan pemrosesan tautan", e)
            }
    }
}

Menguji Dynamic Links

Untuk menguji Dynamic Links, digunakan Firebase Console, di mana tautan uji dapat dibuat dan dikirim ke perangkat melalui aplikasi perpesanan atau email. Firebase Dynamics Links Debugger tersedia di URL https://your-app.page.link/?d=1 dan menampilkan informasi terperinci tentang perilaku tautan. Saat menguji Deferred Deep Links, pastikan aplikasi telah dihapus, dan setelah instalasi tautan mengarah ke layar yang benar dengan parameter yang diteruskan.

Pertanyaan yang sering diajukan

Apa perbedaan Dynamic Links dengan tautan dalam biasa?

Tautan dalam biasa hanya berfungsi saat aplikasi terinstal dan tidak mempertahankan konteks setelah instalasi. Dynamic Links mendukung Deferred Deep Linking — pengguna menginstal aplikasi dan langsung sampai di layar target dengan parameter tautan yang disimpan.

Apakah diperlukan server untuk Dynamic Links?

Server tidak diperlukan untuk membuat dan memproses tautan — semua operasi dilakukan melalui Firebase Console, REST API, atau Firebase SDK di sisi klien. Untuk pembuatan tautan massal, REST API direkomendasikan, tetapi konsol cocok untuk pembuatan manual.

Berapa lama Dynamic Link bertahan?

Dynamic Links tidak memiliki tanggal kedaluwarsa — mereka disimpan di Firebase selamanya jika tidak dihapus secara manual. Tautan pendek dengan sufiks UNIQUE ada tanpa batas waktu. Disarankan untuk membuat tautan unik untuk setiap kampanye demi atribusi yang akurat.

Apakah Dynamic Links berfungsi tanpa internet?

Untuk memproses Dynamic Link diperlukan koneksi internet pada tahap klik, karena server Firebase memeriksa status instalasi aplikasi. Setelah tautan diproses, data diteruskan ke aplikasi melalui intent atau Universal Link dan tersedia bahkan tanpa jaringan.

Berapa biaya Firebase Dynamic Links?

Firebase Dynamic Links gratis dalam paket Spark. Dalam paket Blaze, ada batas 50 ribu klik per hari per proyek tanpa biaya tambahan. Melebihi batas akan memblokir pembuatan tautan baru hingga hari berikutnya.

Ringkasan

  • Firebase Dynamic Links — tautan pintar yang mengarahkan pengguna ke aplikasi atau situs web, dan jika aplikasi tidak ada, ke toko dengan mempertahankan konteks setelah instalasi.
  • Deferred Deep Linking — keunggulan utama yang memungkinkan penerusan konteks (kode promosi, undangan, tautan produk) saat pertama kali dijalankan setelah instalasi.
  • Struktur tautan mencakup domain dasar (your-app.page.link), parameter tautan dalam, pengaturan platform, dan metadata sosial untuk pratinjau.
  • Pembuatan tautan dilakukan melalui Firebase Console, REST API, atau Firebase SDK dengan dukungan tag UTM untuk integrasi dengan Google Analytics.
  • Integrasi di Android memerlukan konfigurasi intent-filter di AndroidManifest dan pemrosesan melalui FirebaseDynamicLinks API dengan dukungan start dingin dan hangat.
  • Integrasi di iOS menggunakan Universal Links dengan file AASA, Associated Domains, dan pemrosesan melalui DynamicLinks SDK di AppDelegate atau SceneDelegate.
  • Gratis hingga 50 ribu klik per hari, tanpa kedaluwarsa tautan, dengan kemampuan membuat domain kustom untuk branding tautan.

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga