Android App Link Entegrasyonu

Güncelleme tarihi: 10 Ara 2021

Android App Linkler, HTTP URL'lerden oluşan, kullanıcıların doğrudan uygulamadaki belirli bir içeriğe/sayfaya yöelimini sağlarlar. Android uygulamalarda iki farklı bağlantı türü oluşturulabilir:


  • Deep Link: Intent filter'lar kullanılarak kullanıcıları doğrudan uygulamadaki belirli içeriğe götüren URL'lerdir.

  • App Link: Android 6 (Api 23) sonrasında bir uygulamanın belirli bir bağlantı türünü varsayılan işleyicisi olarak belirlemesine izin verir.




Android App Link Avantajları

  • Güvenlik ve özgünlük: App link'ler web sitenizin domain adresine bağlı url'leri kullandığı için diğer uygulamalar tarafından erişilemez olurlar.

  • Kullanıcı deneyimi: Kullanıcı içeriğe tıkladığı anda eğer uygulama yüklü değilse web sitenize doğrudan yönlendirilir.

  • Android Instant uygulama desteği: Bu destek ile kullanıcıya uygulamayı yüklemeden kullanma imkanı sunulur.

  • Kullanıcılar ile etkileşim kurmak: Web sitesi ile uygulamayı ilişkilendirdiğimizden bahsetmiştik. Bu sayede Google arama sonuçlarından kullanıcı, belirlediğimiz içeriğe yönlendirir. Uygulama yüklenmiş ise web sayfası yerine uygulamayı açarak ilgili içeriği görüntüler.


Android App Link Entegrasyonu

  1. Uygulamadaki belirli bir içeriğe deep link oluşturma

  2. Deep link doğrulama


1. Uygulamadaki belirli bir içeriğe deep link oluşturma


  • Intent-Filter oluşturma : Manifest'e kullanacağımız linkler için intent-filter tag'ler içerisinda data tag'leri eklememiz gerekmektedir. Bir intent-filter tag'ı içerisine birden fazla data tag'i eklemek mümkün olmasına rağmen bu kullanım tavsiye edilmez. Çünkü amacımız kullanıcıyı doğrudan ulaşmak istediği içeriğe yönlendirmek.


<activity
    android:name="com.example.android.ExampleActivity"
    android:label="@string/title_example" >
    <intent-filter android:label="@string/filter_view_http_example">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="http"
              android:host="www.example.com"
              android:pathPrefix="/exp" />
</activity>

  • Intent ile gelen dataların okunması : getData () methodu ilgili aktivitede çağırılarak veriler handle edilir.


override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.main)

    val action: String? = intent?.action
    val data: Uri? = intent?.data
}