Android Uygulama Bağlantılarını Kullanma

Derin bağlantılar, içerik URI'lerini işler. Web bağlantıları, HTTP ve HTTPS şemalarını yönetir. Android uygulama bağlantıları, autoVerify özelliğini yönetir.
Şekil 1. Derin bağlantılar, web bağlantıları ve Android App Links'in özellikleri.

Cihazlarda bağlantıları takip eden kullanıcıların tek bir hedefi vardır: görmek istedikleri içeriğe ulaşmak. Geliştirici olarak, Android App Links'i, kullanıcıları uygulama seçim iletişim kutusunu (anlam ayrımı iletişim kutusu olarak da bilinir) atlayarak doğrudan uygulamanızdaki bağlantının belirli içeriğine yönlendirecek şekilde ayarlayabilirsiniz. Android App Links, HTTP URL'lerinden ve bir web sitesiyle ilişkilendirmeden yararlandığından, uygulamanızı yüklememiş olan kullanıcılar doğrudan sitenizdeki içeriğe yönlendirilir.

Android uygulama bağlantılarını uygulamadan önce Android uygulamanızda oluşturabileceğiniz farklı bağlantı türlerini (derin bağlantılar, web bağlantıları ve Android uygulama bağlantıları) anlamanız önemlidir. Şekil 1'de bu bağlantı türleri arasındaki ilişki gösterilmektedir. Aşağıdaki bölümlerde her bağlantı türü daha ayrıntılı olarak açıklanmıştır.

Derin bağlantılar, kullanıcıları doğrudan uygulamanızın belirli bir bölümüne yönlendiren şemaların URI'leridir. Derin bağlantı oluşturmak için aşağıdaki kod snippet'inde gösterildiği gibi kullanıcıları uygulamanızdaki doğru etkinliğe yönlendirmek üzere intent filtreleri ekleyin:

<activity
    android:name=".MyMapActivity"
    android:exported="true"
    ...>
    <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="geo" />
    </intent-filter>
</activity>

Kullanıcı bir derin bağlantıyı tıkladığında anlamlandırma iletişim kutusu görünebilir. Bu iletişim kutusu, kullanıcının uygulamanız dahil birden fazla uygulama arasından ilgili derin bağlantıyı açabilecek uygulamayı seçmesine olanak tanır. Şekil 2'de, kullanıcı bir harita bağlantısını tıkladıktan sonra bağlantının Haritalar'da mı yoksa Chrome'da mı açılacağını soran iletişim kutusu gösterilmektedir.

Şekil 2. Anlam ayrımı iletişim kutusu

Web bağlantıları, HTTP ve HTTPS şemalarını kullanan derin bağlantılardır. Android 12 ve sonraki sürümlerde, Android uygulama bağlantısı olmayan bir web bağlantısı tıklandığında içerik her zaman web tarayıcısında gösterilir. Android'in önceki sürümlerini çalıştıran cihazlarda, uygulamanız veya kullanıcının cihazına yüklenen diğer uygulamalar web bağlantısını da işleyebiliyorsa kullanıcılar doğrudan tarayıcıya gitmeyebilir. Bunun yerine, Şekil 2'de gösterilen açıklama amaçlı iletişim kutusunu görürler.

Aşağıdaki kod snippet'inde bir web bağlantısı filtresi örneği gösterilmektedir:

<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="http" />
    <data android:host="myownpersonaldomain.com" />
</intent-filter>

Android 6.0 (API düzeyi 23) ve sonraki sürümlerde kullanılabilen Android Uygulama Bağlantıları, HTTP ve HTTPS şemalarını kullanan ve autoVerify özelliğini içeren web bağlantılarıdır. Bu özellik, uygulamanızın kendisini belirli bir bağlantı türünün varsayılan işleyicisi olarak tanımlamasına olanak tanır. Bu nedenle, kullanıcı bir Android uygulama bağlantısını tıkladığında, uygulamanız yüklüyse hemen açılır ve açıklama amaçlı iletişim kutusu görünmez.

Kullanıcı, uygulamanızın varsayılan işleyici olmasını istemiyorsa bu davranışı uygulama ayarlarından geçersiz kılabilir.

Aşağıdaki kod snippet'inde bir Android uygulaması bağlantısı filtresi örneği gösterilmektedir:

<intent-filter android:autoVerify="true">
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />

    <!-- Do not include other schemes. -->
    <data android:scheme="http" />
    <data android:scheme="https" />

    <data android:host="myownpersonaldomain.com" />
</intent-filter>

Android uygulama bağlantıları aşağıdaki avantajları sunar:

  • Güvenli ve spesifik: Android Uygulama Bağlantıları, sahip olduğunuz bir web sitesi alanına bağlantı veren HTTP URL'leri kullandığından başka hiçbir uygulama bağlantılarınızı kullanamaz. Android App Links ile ilgili koşullardan biri, web sitesi ilişkilendirme yöntemlerimizden birini kullanarak alanınızın sahibi olduğunuzu doğrulamanızdır.
  • Sorunsuz kullanıcı deneyimi: Android uygulama bağlantıları, web sitenizdeki ve uygulamanızdaki aynı içerik için tek bir HTTP URL'si kullandığından, uygulamayı yüklememiş olan kullanıcıların uygulama yerine web sitenize gitmeleri yeterlidir. Kullanıcılar, bu esnada 404s hatası veya başka bir hata almazlar.
  • Android Hazır Uygulamalar desteği: Android Hazır Uygulamalar sayesinde kullanıcılarınız, Android uygulamanızı yüklemeden çalıştırabilir. Android uygulamanıza Hazır Uygulama desteği eklemek için Android Uygulama Bağlantıları'nı ayarlayın ve g.co/InstantApps adresini ziyaret edin.
  • Google Arama'dan kullanıcılarla etkileşime geçin: Kullanıcılar, mobil tarayıcıda, Google Arama uygulamasında, Android'deki ekran aramasında veya Google Asistan üzerinden Google'daki bir URL'yi tıklayarak doğrudan uygulamanızdaki belirli içerikleri açabilir.

Android App Links oluşturmayla ilgili genel adımlar aşağıdaki gibidir:

  1. Uygulamanızdaki belirli içeriklere derin bağlantılar oluşturun: Uygulama manifest dosyanızda web sitesi URI'leriniz için intent filtreleri oluşturun ve kullanıcıları uygulamanızdaki doğru içeriğe göndermek için niyetlerden elde edilen verileri kullanacak şekilde uygulamanızı yapılandırın. Daha fazla bilgi için Uygulama İçeriğine Derin Bağlantılar Oluşturma başlıklı makaleyi inceleyin.
  2. Derin bağlantılarınız için doğrulama ekleyin: Uygulamanızı, uygulama bağlantılarının doğrulanmasını isteyecek şekilde yapılandırın. Ardından, Google Search Console üzerinden sahipliği doğrulamak için web sitelerinizde bir Digital Asset Links JSON dosyası yayınlayın. Uygulama bağlantılarını doğrulama başlıklı makalede daha fazla bilgi edinin.

Yukarıda bağlantısı verilen dokümanlara alternatif olarak, Android Studio'daki Android Uygulama Bağlantıları Asistanı, Android uygulama bağlantıları oluşturmak için gereken her adımda size yol gösteren bir araçtır.

Daha fazla bilgi için aşağıdaki kaynaklara göz atın:

Android App Links'i yönetme ve doğrulama

Derin bağlantıları Play Console üzerinden yönetebilir ve doğrulayabilirsiniz. Bir uygulama başarıyla yüklendikten sonra, derin bağlantılara ve yapılandırma hatalarına genel bir bakış sunan kontrol paneli (Büyüme > Derin bağlantılar bölümünde bulunur) gösterilir.

Şekil 3. Play Console'daki derin bağlantılar kontrol paneli

Kontrol panelinde aşağıdaki bölümler bulunur:

  • Genel derin bağlantı yapılandırmasının öne çıkan özellikleri
  • Manifest dosyasında beyan edilen tüm alanlar
  • Yola göre gruplandırılmış web bağlantıları
  • Özel şemalara sahip bağlantılar
Bu bölümlerin her biri, derin bağlantı durumunu ve hata olması durumunda bu durumu düzeltmenin bir yolunu gösterir.

Kontrol paneli hakkında daha fazla bilgi için lütfen bu rehberi inceleyin.