Deferred Deep Link: nedir, nasıl çalışır ve geliştirmede kullanılır

Yazar: IT Sectr Yayınlanma: 2026-05-15 Okuma süresi: 8 dk

Deferred Deep Link, uygulama kullanıcının cihazında henüz yüklenmemiş olsa bile hedef geçiş bağlamını koruyan bir mekanizmadır. Branch Resources'a göre, uygulama yüklemesinden sonra sistem otomatik olarak kaydedilmiş bağlamı işler ve kullanıcıyı hedef ekrana yönlendirir. Deferred Deep Link, normal bir deep link'in ana sorununu — yüklenmemiş uygulamalarla çalışamama — çözer.

Anahtar Noktalar

  • Deferred Deep Link — geçiş bağlamını koruyan ve uygulama yüklendikten sonra geri yükleyen bir derin bağlantı.
  • Prensip — tarayıcı bağlantı parametrelerini localStorage veya panoya kaydeder ve uygulama SDK'sı yüklemeden sonra ilk çalıştırmada bunları okur.
  • Firebase Dynamic Links — SDK üzerinden minimum entegrasyonla deferred deep link uygulamak için ücretsiz hizmet.
  • Branch.io — gelişmiş deferred deep link desteği ve yükleme atfı sunan ticari platform.
  • Sınırlama — deferred deep link tüm tarayıcılarda çalışmaz ve platform kuralları değiştiğinde SDK güncellemesi gerektirir.

Deferred Deep Link, iki aşamada çalışan bir derin bağlantı türüdür: önce kullanıcı uygulama yüklenmeden önce bağlantıya tıklar, ardından yükleme tamamlandıktan sonra sistem bağlamı geri yükler. Normal bir deep link, uygulama zaten yüklüyse açar, deferred ise tüm geçiş parametrelerini kaydeder ve ilk çalıştırmada iletir.

Bu teknoloji, mobil pazarlamanın büyümesiyle özellikle talep görmeye başladı; reklam kampanyaları genellikle henüz uygulamayı yüklememiş kullanıcıları hedefler. Deferred deep link olmadan, bu tür her geçiş, herhangi bir bağlam olmadan yalnızca uygulamanın indirilmesiyle sonuçlanırdı — kullanıcı hedef ekran yerine ana ekrana ulaşırdı.

Normal deep link'ten farkı

Normal bir deep link, zaten yüklü bir uygulamada hedef içeriği açar. Uygulama yüklü değilse, tarayıcı bir hata gösterir. Deferred Deep Link, kullanıcıyı mağazaya yönlendiren ve yüklemeden sonra uygulamayı kaydedilen parametreler hakkında bilgilendiren bir ara sunucu üzerinden çalışır. Böylece, deferred bağlantı, uygulamanın önceden yüklenmesini gerektirmez ve reklamdan içeriğe kadar uçtan uca bir kullanıcı yolculuğu sağlar.

Deferred Deep Link nasıl çalışır

Deferred deep link işleme üç aşamadan oluşur. İlk aşamada, kullanıcı bağlantıya tıklar — sunucu, uygulamanın yüklü olup olmadığını belirler. Yüklü değilse, benzersiz bir oturum tanımlayıcısı oluşturur, geçiş parametrelerini kaydeder ve kullanıcıyı bu tanımlayıcıyla App Store veya Google Play'e yönlendirir.

İkinci aşamada, kullanıcı mağazadan uygulamayı yükler. Yükleme ve ilk çalıştırmadan sonra, platform SDK'sı sunucuyla iletişime geçer, cihaz tanımlayıcısını iletir ve kaydedilmiş geçiş parametrelerini alır. Üçüncü aşamada, uygulama alınan verileri işler ve kullanıcıyı otomatik olarak hedef ekrana yönlendirir.

Deferred bağlantının yaşam döngüsü

Bağlantı tıklaması ve yükleme arasında parametreleri kaydetmek için çeşitli mekanizmalar kullanılır. iOS'ta bu, iCloud Keychain veya pano; Android'te ise Install Referrer API'dir. Firebase Dynamic Links, oturum tanımlayıcısını iletmek için tarayıcı localStorage'ı ve mağaza yönlendirme bağlantısının bir kombinasyonunu kullanır. Branch.io, birden çok depoda veri yedeklemesiyle kendi protokolünü kullanır.

iOS'ta Deferred Deep Link

iOS'ta deferred deep link, Universal Links ve Shared Web Credentials kombinasyonuyla uygulanır. Kullanıcı, uygulamanın web sitesindeki bir Universal Link'e tıkladığında Safari, geçiş parametrelerini uygulamanın alan adıyla ilişkili iCloud Keychain'de kaydeder. Uygulama App Store'dan yüklendikten sonra iOS, kaydedilmiş verilerin varlığını kontrol eder ve ilk çalıştırmada uygulamaya iletir.

Apple, deferred deep link için yerleşik bir API sağlamaz — uygulama tamamen üçüncü taraf SDK'lara bırakılmıştır. Firebase Dynamic Links, verilerin tarayıcı çerezlerinde kaydedildiği ve uygulamanın ilk çalıştırmasında özel bir URL'ye yönlendirme yoluyla geri yüklendiği bir passive deferred mekanizması kullanır.

iOS'ta sınırlamalar

iOS 14'ten itibaren Apple, gizlilik kurallarını sıkılaştırarak deferred deep link mekanizmalarını etkiledi. Pano, kullanıcının açık izni olmadan veri okumak için artık kullanılamaz. iCloud Keychain'in ayrıca veri hacmi sınırları vardır — her yazma işlemi için en fazla 4 KB. Bu, benzersiz oturum tanımlayıcısına sahip sunucu tarafı çözümlerini bağlam iletmek için tercih edilen yöntem haline getirir.

Android'te Deferred Deep Link

Android, Install Referrer API aracılığıyla deferred deep link için daha esnek seçenekler sunar. Kullanıcı Google Play'e bir bağlantıya tıkladığında, mağaza referrer'ı (geçiş parametrelerini içeren bir dize) yakalar. Yüklemeden sonra, uygulama bu diziyi Install Referrer API aracılığıyla alır ve hedef bağlamı çıkarır. Bu, Android'teki en güvenilir deferred deep link mekanizmasıdır.

Google Play dışında dağıtılan uygulamalar için Android, bir yönlendirme BroadcastReceiver'ı destekler. Geliştirici, yüklemeden sonra parametrelerle özel bir Intent gönderebilir ve uygulama, manifest dosyasında kayıtlı bir BroadcastReceiver aracılığıyla alır. Ancak bu mekanizma, yükleyici uygulamasına bağlı olduğu için daha az güvenilirdir.

Install Referrer API

Install Referrer API, referrer URL'si, tıklama süresi ve yükleme süresi dahil olmak üzere yükleme kaynağı hakkında bilgi sağlar. Maksimum referrer dize uzunluğu 8 KB'dır ve bu, gerekli tüm derin bağlantı parametrelerini iletmek için yeterlidir. API, Google Play Store sürümü 8.3.73 ve üzeri cihazlarda kullanılabilir ve Android 5.0 (API 21) tarafından desteklenir.

Firebase Dynamic Links ile uygulama

Firebase Dynamic Links, her iki platformda deferred deep link uygulamak için en popüler ücretsiz araçtır. Firebase, deferred geçişin tüm aşamalarını otomatik olarak yönetir: uygulama olmadığında mağazaya yönlendirme, Firebase sunucusunda parametreleri depolama ve uygulamanın ilk çalıştırmasında SDK'ya iletme.

Uygulamak için, projeye Firebase SDK'sını entegre edin, derin bağlantıyı ve kampanya parametrelerini belirterek Firebase Console üzerinden bir Dynamic Link oluşturun. Firebase SDK'sı, uygulama başlatıldığında otomatik olarak çağrılır ve getDynamicLink() yöntemiyle gelen Dynamic Link'i kontrol eder.

İşleme kurulum örneği

Kotlin'de bir Activity'de ertelenmiş Firebase Dynamic Link işleme örneği. Kod, uygulama başlatıldığında hem cold start hem de warm start için aynı şekilde çalışır.

kotlin
class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        checkDeferredLink()
    }

    private fun checkDeferredLink() {
        FirebaseDynamicLinks.getInstance()
            .getDynamicLink(intent)
            .addOnSuccessListener link ->
                val deferredLink = link?.link.toString()
                if (deferredLink.isNotEmpty()) {
                    navigateToContent(deferredLink)
                }
            }
    }
}

getDynamicLink() yöntemi, bir DynamicLink nesnesiyle PendingTask döndürür. Bağlantıya tıkladıktan sonra uygulama yüklenmişse, dinleyici parametrelerle veri alır. Geçişten önce uygulama zaten yüklüyse, yöntem normal bir deep link ile aynı verileri döndürür. Bağlantı parametrelerindeki minimumAppVersion bayrağı, işleme için minimum uygulama sürümünü ayarlamaya olanak tanır.

Deferred Deep Link'in avantajları ve sınırlamaları

Deferred Deep Link, pazarlama kampanyaları için önemli avantajlar sağlar: kullanıcı, ek işlem yapmadan yüklemeden sonra hedef içeriği alır, bu da dönüşümü ve elde tutmayı artırır. Yönlendirme programları için deferred bağlantılar, daveti yükleme ve yeni kullanıcı eylemleriyle açık bir şekilde ilişkilendirmeye olanak tanır.

Ancak teknolojinin sınırlamaları da vardır. Deferred deep link, üçüncü taraf çerezleri engelleyen tarayıcılarda çalışmaz ve iOS sürüm 14'ten itibaren iCloud Keychain için ek yapılandırma gerektirir. Ayrıca, bağlantı tıklaması ve yükleme arasında birkaç gün geçebilir ve tüm SDK'lar bu süre boyunca veri korumayı garanti etmez.

Deferred deep link ne zaman kullanılmalı

Deferred deep link, yeni kullanıcıları hedefleyen reklam kampanyaları, davetiyeli e-posta bültenleri ve yönlendirme programları için zorunludur. Zaten yüklü kullanıcılar için normal bir deep link yeterlidir. Uygulama pazarlama kampanyaları veya yönlendirme mekanizmaları kullanmıyorsa, deferred deep link gerekli değildir — Universal Links ve App Links yeterlidir.

Bir uygulama seçerken maliyeti göz önünde bulundurun: Firebase Dynamic Links ücretsizdir ancak sınırlı analitiğe sahiptir. Branch.io ve AppsFlyer gelişmiş atıf sağlar ancak abonelik gerektirir. Küçük projeler için Firebase en uygun çözümdür; düzinelerce reklam kanalı olan kurumsal şirketler için ticari MMP'ler seçimdir.

Sıkça Sorulan Sorular

Deferred deep link normal deep link'ten nasıl farklıdır?

Normal deep link, uygulamanın yüklü olmasını gerektirir ve doğrudan açar. Deferred Deep Link, uygulama yüklü olmasa bile çalışır — mağazaya yönlendirir ve yüklemeden sonra geçiş bağlamını geri yükleyerek hedef ekranı açar.

Deferred deep link parametreleri ne kadar süreyle saklanır?

Saklama süresi platforma bağlıdır. Firebase Dynamic Links parametreleri 30 güne kadar saklar. Branch.io verileri 90 güne kadar korur. Android'te, Install Referrer API, referrer dizesini uygulama tarafından ilk okumaya kadar saklar, ancak 90 günü geçmez.

Deferred deep link masaüstü web tarayıcısında çalışır mı?

Masaüstünde, deferred deep link anlamlı değildir çünkü uygulama bir bilgisayarda mağaza üzerinden yüklenemez. Masaüstünden bir bağlantıya tıklandığında, kullanıcı bir yedek URL görecektir — içeriğin web sürümü veya mobil cihazda yükleme için QR kodlu bir sayfa.

Hangi tarayıcılar deferred deep link'i destekler?

Chrome, Safari ve Samsung Internet, çerez ve localStorage mekanizmaları aracılığıyla deferred deep link'i destekler. Firefox, katı üçüncü taraf çerez engelleme politikası nedeniyle sınırlı desteğe sahiptir. Maksimum kapsama için Firebase veya Branch.io SDK kullanılması önerilir.

Deferred deep link üçüncü taraf SDK olmadan uygulanabilir mi?

Teknik olarak, bir ara sunucu ve yönlendirme mekanizmaları aracılığıyla özel bir çözüm uygulanabilir. Ancak bu, sunucu altyapısının geliştirilmesi ve bakımı, çerezlerin yönetimi, her mağazayla entegrasyon ve farklı platformlardaki sorunların çözülmesini gerektirir. Hazır Firebase ve Branch.io SDK'ları, geliştirmeyi onlarca kat hızlandırır.

Özet

  • Deferred Deep Link — uygulama yüklemesinden sonra gecikmeli bağlam geri yüklemesi olan bir derin bağlantı, normal deep link'lerin sorununu çözer.
  • Prensip — bağlantı tıklaması parametreleri sunucuda kaydeder; yüklemeden sonra SDK sunucuyla iletişime geçer ve bağlamı geri yükler.
  • iOS — iOS 14'ten itibaren sınırlamalarla birlikte iCloud Keychain ve Shared Web Credentials aracılığıyla uygulanır.
  • Android — Google Play Install Referrer API'sini kullanır, mobil platformlarda en güvenilir deferred deep link mekanizmasıdır.
  • Firebase Dynamic Links — minimum entegrasyonla ücretsiz çözüm, çoğu proje için uygundur.
  • Branch.io — gelişmiş atıf, deepview ve reklam ağı entegrasyonuyla ticari platform.
  • Uygulama — deferred deep link, yeni kullanıcıları hedefleyen reklam kampanyaları, yönlendirme programları ve e-posta pazarlaması için gereklidir.

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun