Uygulama bağlantılarıyla ilgili sorunları giderme

Bu kılavuzda, sık karşılaşılan sorunlar ve bunları nasıl gidereceğiniz açıklanmaktadır. Ayrıca Play Console Derin Bağlantılar sayfasındaki veya Android Studio App Links Assistant'taki sorun giderme araçlarını da kullanabilirsiniz. Daha fazla bilgi için Uygulama Bağlantıları geliştirici araçları başlıklı makaleyi inceleyin.

  • Sorun: Uygulamanızı açması gereken bir bağlantıyı tıkladığınızda bağlantı bir web tarayıcısında açılıyor veya açıklama amaçlı iletişim kutusu gösteriliyor.
  • Çözüm:
    • assetlinks.json dosyasını kontrol edin: Dosyanın geçerli bir JSON dosyası olduğundan, https://<your-domain>/.well-known/assetlinks.json adresinde erişilebilir olduğundan ve yönlendirme olmadan HTTPS üzerinden sunulduğundan emin olun. Online doğrulayıcı kullanın.
    • SHA-256 parmak izini doğrulayın: sha256_cert_fingerprints dosyasındaki assetlinks.json'in, uygulama sürümünüzün imzalama anahtarının parmak iziyle tam olarak eşleştiğini doğrulayın (Play Uygulama İmzalama kullanıyorsanız Play Console'daki parmak izini kullanın). İmza büyük harflerle yazılmalıdır.
    • Doğrulama autoVerify: AndroidManifest.xml dosyanızdaki <intent-filter> öğesinin android:autoVerify="true öğesini içerdiğinden emin olun.
    • Sunucu tarafı yönlendirmeleri kontrol edin: http alanından https alanına veya www olmayan bir alandan www alanına yapılan yönlendirmeler, doğrulamanın başarısız olmasına neden olabilir.
    • Yeniden doğrulamayı zorunlu kılın: Yeni bir doğrulama sonucu almak için Uygulama Bağlantılarını Test Etme rehberindeki ADB komutlarını çalıştırın.
    • Bağlantı çözümlemeyi teşhis etme (Android 17+): Hangi aday uygulamaların, manifest intent filtrelerinin ve Dinamik Uygulama Bağlantısı kurallarının URL ile eşleştiğini incelemek için adb shell am start --debug-link -a android.intent.action.VIEW -d "<URL>" komutunu çalıştırın. Ayrıntılar için Hata ayıklama bağlantısı işaretini kullanarak bağlantı çözümlemesini teşhis etme başlıklı makaleyi inceleyin.

Android 15 ve sonraki sürümlerde dinamik kurallar güncellenmiyor

  • Sorun: assetlinks.json dosyanızdaki kuralları güncellediniz ancak yeni bağlantılar uygulama tarafından işlenmiyor.
  • Çözüm:
    • Yeniden doğrulamayı zorunlu kılın: Değişiklikleri test etmenin en güvenilir yolu, adb shell pm verify-app-links --re-verify <your-package-name> ile yeniden getirmeyi zorunlu kılmaktır.
    • Yazım hatalarını kontrol edin: Kurallarınızdaki kalıp eşleştiricilerde söz dizimi hataları olup olmadığını dikkatlice inceleyin.
    • Manifest filtre kurallarını kontrol edin: Bağlantı yolunun filtrelenmediğinden emin olmak için uygulama manifestindeki intent filtresi kurallarını inceleyin. Bağlantı filtreleniyorsa uygulama manifestindeki intent filtresini daha az kısıtlayıcı hale getirin.
    • Eşleşme kurallarını teşhis etme (Android 17 ve üzeri): Hangi kuralların değerlendirildiğini incelemek ve bir hariç tutma kuralının (allow = 1) uygulamanın açılmasını engelleyip engellemediğini belirlemek için adb shell am start --debug-link -a android.intent.action.VIEW -d "<URL>" komutunu çalıştırın. debug-link işaretiyle bağlantı çözümlemesini teşhis etme başlıklı makaleyi inceleyin.

Sık karşılaşılan uygulama hatalarını düzeltme

Android Uygulama Bağlantılarınızı doğrulayamıyorsanız aşağıdaki yaygın hataları kontrol edin. Bu bölümde yer tutucu alan adı olarak example.com kullanılır. Bu kontrolleri yaparken example.com yerine sunucunuzun gerçek alan adını kullanın.

Yanlış intent filtresi ayarı
Uygulamanızın sahibi olmadığı bir URL'yi <intent-filter> öğesine ekleyip eklemediğinizi kontrol edin.
Yanlış sunucu yapılandırması

Sunucunuzun JSON yapılandırmasını kontrol edin ve SHA değerinin doğru olduğundan emin olun.

Ayrıca, example.com. (sondaki nokta ile) öğesinin example.com ile aynı içeriği sunduğundan emin olun.

Sunucu tarafı yönlendirmeler

Aşağıdakiler gibi bir yönlendirme ayarlarsanız sistem, uygulamanız için hiçbir Android Uygulama Bağlantısı'nı doğrulamaz:

  • http://example.com - https://example.com
  • example.com - www.example.com

Bu davranış, uygulamanızın güvenliğini korur.

Sunucu sağlamlığı

İstemci uygulamalarınızın sunucunuza bağlanıp bağlanamadığını kontrol edin.

Doğrulanamayan bağlantılar

Test amacıyla, doğrulanabilir olmayan bağlantıları bilerek ekleyebilirsiniz. Android 11 ve önceki sürümlerde bu bağlantıların, sistemin uygulamanız için tüm Android Uygulama Bağlantıları'nı doğrulamasını engellediğini unutmayın.

assetlinks.json dosyasında yanlış imza var

İmzanızın doğru olduğunu ve uygulamanızı imzalamak için kullanılan imzayla eşleştiğini doğrulayın. Sık yapılan hatalar şunlardır:

  • Uygulamayı hata ayıklama sertifikasıyla imzalama ve yalnızca assetlinks.json'da yayın imzasına sahip olma.
  • assetlinks.json içinde küçük harfli bir imza kullanıyorsanız. İmza büyük harflerle yazılmalıdır.
  • Play Uygulama İmzalama özelliğini kullanıyorsanız Google'ın her sürümünüzü imzalamak için kullandığı imzayı kullandığınızdan emin olun. Web sitesi ilişkilendirmelerini bildirme ile ilgili talimatları uygulayarak bu ayrıntıları (tam bir JSON snippet'i dahil) doğrulayabilirsiniz.

Hata raporu alma

Yeniden oluşturulması zor olan karmaşık sorunlar için hata raporu alın ve bu raporu analiz edin. Bu, doğrulama süreci ve sistem düzeyindeki hatalar hakkında değerli bilgiler sağlayabilir.