Mobil Deep Link Hakkında Bilmeniz Gereken Her Şey
Yayınlanan: 2017-02-14İçindekiler
Derin bağlantı söz konusu olduğunda, pek çok insan bunun ne olduğunu bilmiyor. Teknoloji dünyasının isimsiz kahramanı. Yine de insanlar her gün varlığından haberdar olmadan kullanıyorlar ya da belki bir adı olduğunu bilmiyorlar. Bu yazıda, derin bağlantının ne olduğu ve mobil cihazlarda nasıl uygulandığı hakkında bazı temel fikirler edineceksiniz.
Derin bağlantı nedir?
Derin bağlantı, bir bağlantı aracılığıyla yerel bir mobil uygulamayı başlatmak için kullanılan bir metodolojidir.
Derin bağlantı tam olarak ne diyorsa onu yapar: kullanıcıları bir bağlantıyla bir web sitesinin/uygulamanın derinliklerine götürün. Masaüstünde, derin bağlantı, web sitesinin ana sayfası (örneğin, “http:/ /example.com/”). Mobil cihazlarda, derin bağlantı, yalnızca uygulamayı başlatmak yerine bir mobil uygulama içindeki belirli bir konuma bağlanan tek tip bir kaynak tanımlayıcısı (URI) kullanır. Bu seride yalnızca mobil derin bağlantıya odaklanıyoruz.
Yani cep telefonunuzdan internette geziniyorsunuz. Google'da “Facebook” araması yapıyorsunuz ve ilk sonuç Facebook'un ana sayfasını gösteriyor. Bu bağlantıya dokunursunuz ve Facebook'un ana sayfasına yönlendirilmek yerine cep telefonunuzdaki Facebook uygulaması açılır. Temelde mobil derin bağlantı bu şekilde çalışır.

Bir mobil uygulama için derin bağlantıyı etkinleştirmek, bir uygulamayı açan ve uygulama içinde ana sayfa, ürün sayfaları ve alışveriş sepeti gibi belirli, tanımlı ekranları başlatan derin bağlantıları bir web sitesinde olduğu gibi başlatmanıza olanak tanır.
Derin bağlantı, bir web sitesine veya iOS App Store ya da Google Play'deki uygulamanızın listesine gitmek yerine, bir bağlantı tıklandığında sizin ve herhangi bir üçüncü tarafın uygulamayı açmasına olanak tanıdığından, tanıtım çalışmaları için özellikle yararlıdır.
3 tür derin bağlantı
1. Geleneksel derin bağlantılar

Geleneksel derin bağlantılar, bağlantı açıldığında uygulama zaten yüklü olduğu sürece kullanıcıları uygulama içeriğine yönlendirebilir. Bu, kullanıcının uygulamaya sahip olmaması durumunda geleneksel derin bağlantıların çalışmadığı ve ya bir hata ya da bir geri dönüş sayfası göstereceği anlamına gelir.
2. Ertelenmiş derin bağlantılar

Ertelenmiş derin bağlantılar, bağlantı açıldığında uygulama yüklü olmasa bile kullanıcıları içeriğe yönlendirebilir. Bağlantı, uygulamayı indirmek için önce App Store'a veya Play Store'a yönlendirilecek ve ardından ilk başlatmadan hemen sonra kullanıcıyı belirli "ertelenmiş" içeriğe götürecektir.
3. Bağlamsal derin bağlantılar
Bağlamsal derin bağlantılar, ertelenmiş derin bağlantıların tüm işlevlerine ve çok daha fazlasına sahiptir. Bağlamsal derin bağlantılar, bir kullanıcının nereye gitmek istediği, bağlantının nerede tıklandığı, bağlantıyı ilk kimin paylaştığı hakkında bilgileri ve neredeyse sınırsız miktarda özel veri depolar.
Bağlamsal bağlantılar, hem uygulama geliştiricileri hem de kullanıcılar için değer katar. Uygulama geliştiricileri, kişiselleştirilmiş karşılamalar (sizinle bir öğe paylaşırlarsa uygulamada arkadaşınızın önerisini gördüğünüz yer) ve tavsiye programları dahil olmak üzere, yalnızca basit içerik bağlantısının ötesinde güçlü özellikler oluşturabilir. Uygulama kullanıcıları, uygulamalar daha iyi deneyimler ve daha alakalı bilgiler sağlayabileceğinden fayda sağlar.
URI Şeması
Özel URI şemaları, mobil uygulamalar için orijinal derin bağlantı biçimiydi. Uygulamanız için myapp://path/to/content gibi görünen bağlantılarla "özel bir internet" oluşturmaya benzerler. Özel URI şemalarının avantajı, kurulumlarının kolay olması ve çoğu uygulamada zaten bir tane olmasıdır. Dezavantajı ise, kullanıcının cihazının bu "özel internet"i ancak ilgili uygulama zaten yüklüyse bilmesi ve varsayılan olarak zarif bir geri dönüş seçeneği olmamasıdır.
URI şemalarıyla derin bağlantı oluşturmaya yönelik geçici çözüm yaklaşımı, bir web tarayıcısını başlatmak için geleneksel bir http:// bağlantısı kullanmayı içerir. Bu bağlantı, uygulamayı başlatmak için web tarayıcısı tarafından yürütülen özel bir URI şemasına bir JavaScript yönlendirmesi içerir. Uygulama yüklü olmadığı için yeniden yönlendirme girişimi başarısız olursa, JavaScript kullanıcıyı App Store veya Play Store'a götürür.
Bu hala Android'de derin bağlantıya yönelik birincil yaklaşımdır, ancak Apple, 2015 yılında Universal Links'in piyasaya sürülmesiyle iOS'ta bu yaklaşımı engellemeye başlamıştır .
Apple iOS Evrensel Bağlantıları
Apple, özel URI şeması derin bağlantılarındaki zarif geri dönüş işlevselliğinin eksikliğine bir çözüm olarak iOS 9'da Evrensel Bağlantıları tanıttı. Evrensel Bağlantılar, hem bir web sayfasına hem de bir uygulama içindeki bir içeriğe işaret eden standart web bağlantılarıdır (http://mydomain.com). Bir Evrensel Bağlantı açıldığında, iOS, bu etki alanı için yüklü herhangi bir aygıtın kayıtlı olup olmadığını kontrol eder. Eğer öyleyse, uygulama web sayfasını hiç yüklemeden hemen başlatılır. Değilse, web URL'si (App Store'a basit bir yönlendirme olabilir) Safari'ye yüklenir.
Branch platformundaki binlerce uygulama üzerinde yapılan bir araştırma, Universal Links'in açık dönüşüm dönüşümünü %40 oranında artırdığını buldu.
Android Bağlantıları
Google, Uygulama Bağlantılarını iOS Evrensel Bağlantılara Android eşdeğeri olarak oluşturdu ve çok benzer bir şekilde çalışırlar: hem bir web sayfasına hem de bir uygulama içindeki bir içeriğe işaret eden standart bir web bağlantısı. Bu, daha sorunsuz bir kullanıcı deneyimi sağlar, ancak özel URI şemaları Android'in her sürümü tarafından hala tam olarak desteklendiğinden, Uygulama Bağlantıları çok düşük oranda benimsenmiştir.
Facebook Uygulama Bağlantıları
Facebook, URI şeması derin bağlantılarının sınırlamalarını çözmek için 2014 yılında Uygulama Bağlantılarını açık bir standart olarak oluşturdu. Uygulama Bağlantılarının iki ana bileşeni vardır:
- Standart bir http:// bağlantısının web sayfası hedefine eklenecek bir dizi meta etiket. Bu etiketler, yerel uygulama içindeki karşılık gelen içeriğin özel URI şeması konumunu ve uygulama yüklü değilse gerçekleşmesi gereken davranışı belirtir.
- Bağlantıları açmayı destekleyen uygulamalar içinde kullanım için bir yönlendirme motoru. Bu motor, açmadan önce Uygulama Bağlantıları etiketleri için hedef URL'yi kontrol eder ve ardından ilgili uygulamayı başlatır veya belirtilen geri dönüş davranışını yürütür.

http://applinks.org/documentation/
App Links standardının kritik bir kusuru vardır: Hem kaynak hem de hedef uygulamalar tarafından çalışmayı gerektirir. Meta etiketler bileşeni geniş çapta benimsenirken, yönlendirme motorunun tek büyük uygulamaları çekirdek Facebook ve Messenger uygulamalarındaydı.
Facebook artık kullanıcıları kendi platformunda tutmayı tercih ediyor ve App Links yönlendirme motorunu ana Android uygulaması dışında her yerden kaldırdı. Facebook, iOS Evrensel Bağlantılarını da engellediğinden, bu, iOS'ta Facebook veya Messenger'dan üçüncü taraf uygulamaları açmanın güvenilir bir yolunu bırakmaz. Branch, bu sınırlamaları aşmaya yardımcı olacak bir çözüm uyguladı.

Derin Bağlantı Yapısı
Derin bağlantı, bir web sayfasındaki geleneksel bir köprü gibi çalışır. Tekdüzen Kaynak Tanımlayıcısı (URI) olarak adlandırılan şeyi oluşturan ayrı öğelerden oluşur. URI, çağrıldığında belirli bir ekranla bir mobil uygulamayı başlatan tüm bilgileri içerir.
Derin bağlantı yapısını düşünürken en iyi uygulama, uygulamada gerçekleştirilecek özel eylemleri temsil eden benzersiz bir şema adı ve yönlendirme parametreleri (yol ve sorgu dizeleri) içeren bir URL uygulamaktır. Çok özel ihtiyaçlarınız yoksa, aşağıdaki örnekte gösterildiği gibi basit bir URL yapısı kullanmanızı öneririz:
mobiledeeplinkingprojectdemo://path?query_string
mobiledeeplinkingprojectdemo
şema adı olduğunda, yol ve sorgu dizesi, kullanıcıyı uygulamadaki belirli bir deneyime daha fazla yönlendirmek için kullanılan yönlendirme parametreleridir.
Şema adı için:
- Bir şema adı seçerken, farklı uygulamalar arasında çakışan şemalardan kaçınmak için markanıza özgü bir ad seçmeniz önemlidir.
- Şu anda şema adlarıyla çakışmaları yönetecek merkezi bir otorite yok
- En iyi uygulama, şema adının markanıza atıfta bulunmasıdır (örn. mobiledeeplinkingprojectdemo). Şema adları için önerilen başka bir model, ters alan adı notasyonunu kullanmaktır (ör. org.mobiledeeplinking), ancak bu yaygın olarak izlenmez.
Yönlendirme parametreleri için (yol ve sorgu dizesi):
- Yönlendirme parametreleri isteğe bağlıdır, ancak şiddetle tavsiye edilir. Yönlendirme parametreleri, kullanıcıyı uygulamanın belirli ekranlarına yönlendirmek veya ek parametreleri iletmek için size daha fazla kontrol sağlar.
- Sorgu dizesi isteğe bağlıdır ve ürün kimliği gibi belirli parametreleri iletmeniz gerekirse kullanılabilir
- Üçüncü taraflar, yönlendirme parametrelerine ek meta veriler ekleyebilir, bu nedenle uygulamanızın bu kullanım durumunu ele alabilmesi önemlidir (bunun için Bölüm 2'de tartışılan iOS ve Android kitaplıkları hesaba katılır)
- Mobil uygulamanın ilgili bir web sitesi varsa, mobil uygulama için yönlendirme parametreleri sözdiziminin web sitesindeki URL yapısıyla eşleşmesi önerilir.
İşte iOS'taki popüler uygulamalar için birkaç derin bağlantı örneği:
geliştirici | Derin bağlantı – ör. | Amaç |
---|---|---|
heyecan | twitter://zaman tüneli | Twitter uygulamasını açar ve kullanıcının zaman çizelgesine bağlantı verir |
fb://profil | Facebook uygulamasını açar ve kullanıcının profiline bağlantı verir | |
Havlama | havlama:// | Yelp uygulamasını açar (not: bu örnek herhangi bir yönlendirme parametresi içermez) |
Derin Bağlantı Uygulaması
MobileDeepLinking kitaplığını kullanmayı seçip seçmediğinizden bağımsız olarak, derin bağlantı uygulamak için şunları yapmanız gerekir:
- Kullanacağınız URI şemasını seçin ve uygulamanın bildiriminde bildirin (aşağıda daha ayrıntılı olarak ele alınmıştır). Bölüm 1'de tartışıldığı gibi , şema adı uygulamanıza özel olmalıdır , aksi takdirde diğer uygulamalarla çakışmalar meydana gelebilir
- Bir derin bağlantı kullanarak başlatmak istediğiniz eylemleri tanımlayın. Bu eylemlerin seçtiğiniz URI sözdizimine uygun olduğundan emin olun. Bölüm 1'de belirtildiği gibi, URL sözdiziminin kullanılması şiddetle tavsiye edilir (örn
schemename://path?query_string
)
Bu yapıldıktan sonra, amaçlanan eylemi başlatmak için URL'nin yol ve sorgu dizesi bölümlerini işleyecek kodu uygulamaya başlayabilirsiniz.
MobileDeepLinking kitaplıklarını kullanmanız önerilir, ancak doğrudan mobil derin bağlantı uygulamak istiyorsanız, üst düzey süreç aşağıdaki gibidir:
iOS
iOS uygulamaları bağımsız varlıklardır. Uygulamada yalnızca bir giriş noktası vardır: AppDelegate. Uygulamanıza bir derin bağlantı başlatıldığında, derin bağlantı meta verileriyle birlikte AppDelegate'i çağırır.
İstenen deneyimi sağlarken uygulamanızda tutarlı bir durum sağlamak önemlidir. Herhangi bir uygulama durumunda herhangi bir zamanda bir derin bağlantı tetiklenebilir ve uygulamayı kararlı bir durumda tutmak sizin sorumluluğunuzdadır.
Örneğin bu, kullanıcının uygulamanızın ana ekranına dönmesine izin vermek anlamına gelebilir. Bunu başarmak için, doğru görünüm hiyerarşisini korurken kullanıcıyı uygulamanızın istenen bölümüne göndermek için uygun görünüm denetleyicilerine basmalısınız.
Uygulama açıldığında, başlatmak için kullanılan URL'yi kurtarabilir ve ihtiyaçlarınıza göre işleyebilirsiniz.
AppDelegate ile ilgili başvuru belgelerini burada bulabilirsiniz.
Android
Android uygulamaları bir dizi Aktiviteden oluşur. Bu Etkinliklerin her biri, bu şekilde yapılandırılmışsa diğer uygulamalar tarafından çağrılabilir. Uygulamanızın ve derin bağlantılarınızın nasıl yapılandırıldığına bağlı olarak, bir veya daha fazla merkezi uç nokta kullanmayı seçebilirsiniz.
İstenen deneyimi sağlarken uygulamanızda tutarlı bir durum sağlamak önemlidir. Mevcut bağlamın üstünde bir Android Etkinliği başlatılır ve uygun görünüm hiyerarşisinin korunmasını sağlamak sizin sorumluluğunuzdadır. Ayrıca, kullanıcı için yüklendiğinde Activity için gerekli verilerin hazır olması önemlidir.
Uygulama açıldığında, başlatmak için kullanılan URL'yi kurtarabilir ve ihtiyaçlarınıza göre işleyebilirsiniz.
Android derin bağlantısıyla ilgili referans belgelerini burada bulabilirsiniz.
Kullanım durumları
1. Web kullanıcılarını uygulama kullanıcılarına dönüştürme
Güzel bir yerel uygulamaya ek olarak harika bir mobil web sitesi oluşturma zahmetine girdiyseniz, ancak dönüşüm oranınızın yerel uygulamada web'den daha iyi olduğunu fark ederseniz ne olur? Bu durumda, mobil web kullanıcılarını uygulamanızı indirmeye dönüştürmek işletmenizi hızlandırabilir. Bunları birinden diğerine taşımak zor olsa da, derin bağlantı bunu kolaylaştırır. Mobil derin bağlantıyla, kullanıcıları mobil web sitenizden uygulamanızdaki eşdeğer içeriğe sorunsuz bir şekilde geçirebilirsiniz. Bağlantılar uygulama yükleme sürecinden sağ çıktığı için, yeni kullanıcılar bile mobil sitenizde hiç vakit kaybetmeden kaldıkları yerden devam edebilirler.

2. Sosyal, e-posta ve SMS kampanyaları
Herhangi bir platformda çalışan bağlantıları kullanarak promosyon teklifleri gönderin. Mevcut ve gelecekteki kullanıcılar, iOS, Android veya bir web tarayıcısı kullansalar da ve uygulamanızın zaten yüklü olup olmadığına bakılmaksızın tekliflerinizi kullanabilirler.

3. Kullanıcıdan kullanıcıya paylaşım
Yeni kullanıcıların uygulamanızı yüklemesini sağlamanın en etkili yollarından biri, kullanıcılarınızın uygulamanızdaki içeriği arkadaşlarıyla paylaşmasına olanak tanımaktır. Mobil derin bağlantı ile, kullanıcıdan kullanıcıya harika bir paylaşım deneyimi oluşturabilirsiniz: Arkadaşlarından içerik önerileri alan kullanıcılar, bir bağlantıya tıklayabilir ve doğrudan uygulamanızdaki paylaşılan içeriğe gidebilirler. Önce uygulamanızı yüklemek için App Store veya Google Play Store.

4. Gerçek dünyada uygulama tanıtımı
Uygulamanızı etkinliklerde ve mekanlarda tanıtmak için fiziksel ekranlarınızda derin bir bağlantıyı kodlayan QR kodlarını veya barkodları kullanın. Kullanıcılar, QR kodlarını/barkodlarını taramak ve uygulamanızdaki hedeflenen içeriğe yönlendirilmek için cep telefonlarının kamerasını kullanabilir veya yüklememişlerse önce uygulamanızı yüklemeleri istenebilir.

Yukarıdaki 4 kullanım örneği, bir pazarlamacının bakış açısından, derin bağlantının işletmenize nasıl yardımcı olabileceğinin sadece birkaç örneğidir. Satışları ve etkileşimi artırmak için uygulamanızda mobil derin bağlantıyı kullanmanın kesinlikle başka birçok yolu vardır.
Çözüm
Derin bağlantılar, yalnızca kullanıcıları tanımlamanın, adreslemenin ve uygulamalardaki belirli içeriğe taşımanın bir yoludur. Kullanışlı (ve gerekli) olmakla birlikte, o kadar da devrim niteliğinde veya heyecan verici değiller. Derin bağlantıların gelecekteki değeri, onları nasıl kullandığımızda yatar - üstlerinde ne olduğu ve etkinleştirecekleri yeni tüketici deneyimleri.
Bu, sahip olduğunuz uygulamalar için derin bağlantıları keşfetmenin yeni yollarını, derin bağlantılı ilgili içerik ve hizmetler aracılığıyla yeni uygulamaları keşfetmeyi ve bağlantılar arasında daha fazla zeka aktarımını içerecektir. Tıpkı bir köprü gibi, dünyayı değiştirecek olan mekanizma değil, onları web'i birbirine bağlamak için kullanma şeklimizdir.