Google Play'in hedef API düzeyi şartını karşılayın

Yüklediğiniz APK'nın Google Play'in hedef API düzeyi şartlarını karşılaması gerekir.

31 Ağustos 2025'ten itibaren:

  • Yeni uygulamaların ve uygulama güncellemelerinin, Google Play'e gönderilebilmesi için Android 15'i (API düzeyi 35) veya sonraki sürümleri hedeflemesi gerekir. Wear OS, Android Automotive OS ve Android TV uygulamaları ise Android 14'ü (API düzeyi 34) veya sonraki sürümleri hedeflemelidir.
  • Mevcut uygulamaların, uygulamanızın hedef API düzeyinden daha yüksek Android OS sürümlerinin yüklü olduğu cihazların yeni kullanıcıları tarafından her zamanki gibi bulunabilmesi için Android 14 (API düzeyi 34) veya sonraki sürümleri hedeflemesi gerekir. Wear OS ve Android TV için Android 12 (API düzeyi 31) veya önceki sürümler de dahil olmak üzere Android 13 (API düzeyi 33) veya önceki sürümleri hedefleyen uygulamalar, yalnızca uygulamanızın hedef API düzeyiyle aynı veya önceki Android OS sürümlerinin yüklü olduğu cihazlarda kullanılabilir.

Uygulamanızı güncellemek için daha fazla zamana ihtiyacınız varsa 1 Kasım 2025'e kadar uzatılacak şekilde ek süre talep edebilirsiniz. Play Console'da uygulamanızın uzantı formlarına bu yılın ilerleyen dönemlerinde erişebilirsiniz.

Bu şartlarla ilgili istisnalar şunlardır:

  • Belirli bir kuruluştaki kullanıcılarla sınırlı olan ve yalnızca şirket içi dağıtım için tasarlanmış kalıcı olarak özel uygulamalar.

Neden daha yeni SDK'ları hedeflemelisiniz?

Her yeni Android sürümü, güvenlik ve performans iyileştirmeleri sağlamanın yanı sıra Android kullanıcı deneyimini geliştiren değişiklikler sunar. Bu değişikliklerden bazıları yalnızca targetSdkVersion manifest özelliği (hedef API düzeyi olarak da bilinir) aracılığıyla desteği açıkça beyan eden uygulamalar için geçerlidir.

Uygulamanızın yeni bir API düzeyini hedefleyecek şekilde yapılandırılması, kullanıcıların bu iyileştirmelerden yararlanmasını sağlarken uygulamanızın daha eski Android sürümlerinde çalışmaya devam etmesine olanak tanır. Yeni bir API düzeyini hedeflemek, uygulamanızın platformun en yeni özelliklerinden yararlanarak kullanıcılarınızı memnun etmesini de sağlar. Ayrıca, Android 10 (API düzeyi 29) itibarıyla, Android 5.1 (API düzeyi 22) veya önceki sürümleri hedefleyen uygulamaları ilk kez başlatan kullanıcılar uyarı görür.

Bu belgede, hedef API düzeyinizi Google Play şartını karşılayacak şekilde güncellerken bilmeniz gereken önemli noktalar vurgulanmaktadır. Hangi sürüme taşıdığınıza bağlı olarak aşağıdaki bölümlerdeki talimatları inceleyin.

Android 12 ve sonraki sürümlerden (API düzeyi 31) daha yeni bir sürüme geçiş

Uygulamanızı Android'in daha yeni bir sürümünü hedefleyecek şekilde güncellemek için ilgili davranış değişiklikleri listesini inceleyin:

Android 11 (API düzeyi 30) sürümünden Android 12 (API düzeyi 31) sürümüne geçiş

Güvenlik ve İzinler

Kullanıcı Deneyimi

  • Özel bildirimler: Özel içerik görünümlerine sahip bildirimler artık bildirim alanının tamamını kullanmayacak. Bunun yerine, sistem standart bir şablon uygulayacak. Bu şablon, özel bildirimlerin tüm durumlarda diğer bildirimlerle aynı süslemeye sahip olmasını sağlar. Bu davranış, Notification.DecoratedCustomViewStyle davranışıyla neredeyse aynıdır.
  • Android App Links doğrulama değişiklikleri: Android App Links doğrulamayı kullanırken amaç filtrelerinizin BROWSABLE kategorisini içerdiğinden ve HTTPS şemasını desteklediğinden emin olun.

Performans

  • Ön plan hizmeti başlatma kısıtlamaları: Android 12 veya sonraki sürümleri hedeflemek için uygulamanız, arka planda çalışırken birkaç özel durum dışında ön plan hizmetlerini başlatamaz. Bir uygulama arka planda çalışırken ön plan hizmeti başlatmaya çalışırsa (birkaç özel durum hariç) istisna oluşur.

    Uygulamanız arka planda çalışırken hızlandırılmış işi planlamak ve başlatmak için WorkManager'ı kullanabilirsiniz. Kullanıcının istediği zamana duyarlı işlemleri tamamlamak için tam alarm içinde ön plan hizmetlerini başlatın.

  • Bildirim trambolini kısıtlamaları: Kullanıcılar bildirimlere dokunduğunda bazı uygulamalar, kullanıcının gördüğü ve etkileşimde bulunduğu etkinliği başlatan bir uygulama bileşenini başlatarak yanıt verir. Bu uygulama bileşeni, bildirim trambolini olarak bilinir.

    Uygulamalar, bildirim trampolinleri olarak kullanılan hizmetlerden veya yayın alıcılarından etkinlik başlatmamalıdır. Kullanıcı bir bildirime veya bildirimdeki işlem düğmesine dokunduktan sonra uygulamanız bir hizmetin veya yayın alıcının içinde startActivity() işlevini çağıramaz.

Android 12'yi (API düzeyi 31) hedefleyen uygulamaları etkileyen değişikliklerin tam listesini inceleyin.

Android 11'den (API düzeyi 30) önceki sürümlerden geçiş yapma

Verileri taşıyacağınız Android sürümünü seçin:

Android 5'e (API düzeyi 21) geçiş yapma

Uygulamanızın bu sürümlerde yapılan değişiklikleri hesaba kattığından emin olmak için aşağıdaki sürümlerin her biriyle ilgili Davranış Değişiklikleri sayfasına bakın:

Bir sonraki bölümde bulunan talimatları izleyerek devam edin.

Android 6'ya (API düzeyi 23) geçiş yapma

Android 6.0 ve platformun sonraki sürümlerini hedefleyen uygulamalar için aşağıdaki hususlar geçerlidir:

  • Çalışma Zamanı İzinleri

    • Tehlikeli izinler sadece çalışma zamanında verilir. Kullanıcı arayüzü akışlarınız, bu izinlerin verilmesi için olanaklar sağlamalıdır.

    • Mümkün olan her yerde, uygulamanızın izin isteklerinin reddedilmesini işleyecek şekilde hazır olduğundan emin olun. Örneğin, bir kullanıcı cihazın GPS'ine erişim isteğini reddederse uygulamanızın devam etmek için başka bir yolu olduğundan emin olun.

Android 6.0'da (API düzeyi 23) kullanıma sunulan değişikliklerin kapsamlı listesi için platformun bu sürümüne ait Davranış Değişiklikleri sayfasını inceleyin.

Bir sonraki bölümde bulunan talimatları izleyerek devam edin.

Android 7'ye (API düzeyi 24) geçiş yapma

Android 7.0 ve platformun daha yeni sürümlerini hedefleyen uygulamalar için aşağıdaki hususlar geçerlidir:

  • Doz ve Uygulamayı Beklemeye Alma

    Doz ve Uygulamayı Beklemeye Alma için Optimize Etme bölümünde açıklanan davranışlara göre tasarım yapın. Bu bölüm, çeşitli platform sürümlerinde kullanıma sunulan artımlı değişiklikleri kapsar.

    Bir cihaz Doz ve Uygulamayı Beklemeye Alma Modu'ndayken sistem aşağıdaki gibi davranır:

    • Ağ erişimini kısıtlar
    • Alarmları, senkronizasyonları ve işleri erteler.
    • GPS ve kablosuz ağ taramalarını kısıtlar.
    • Normal öncelikli Firebase Cloud Messaging iletilerini kısıtlar.
  • İzin Değişiklikleri

    • Sistem, uygulamaya özel dizinlere erişimi kısıtlar.
    • Uygulamanızın dışında file:// URI'si kullanmak FileUriExposedException tetikler. Uygulamanızın dışında dosya paylaşmanız gerekiyorsa FileProvider
  • Sistem, NDK dışı kitaplıklara bağlantı oluşturulmasını yasaklar.

Android 7.0'da (API düzeyi 24) kullanıma sunulan değişikliklerin kapsamlı listesi için platformun bu sürümüne ait Davranış Değişiklikleri sayfasını inceleyin.

Bir sonraki bölümde bulunan talimatları izleyerek devam edin.

Android 8'e (API düzeyi 26) geçiş yapma

Android 8.0 ve platformun sonraki sürümlerini hedefleyen uygulamalar için aşağıdaki hususlar geçerlidir:

Android 8.0'da (API düzeyi 26) kullanıma sunulan değişikliklerin kapsamlı listesi için platformun bu sürümüne ait Davranış Değişiklikleri sayfasını inceleyin.

Android 8'den (API 26) Android 9'a (API 28) taşıma

Android 9.0'da (API seviyesi 28) yapılan değişikliklerin kapsamlı listesi için davranış değişiklikleri başlıklı makaleyi inceleyin.

Android 9'dan (API düzeyi 28) Android 10'a (API düzeyi 29) taşıma

Android 10'dan (API düzeyi 29) Android 11'e (API düzeyi 30) geçiş

Android 11'de (API düzeyi 30) yapılan değişikliklerin kapsamlı listesi için Davranış Değişiklikleri sayfasına bakın.

Önceki bölümdeki talimatları uygulayarak API 31'e güncellemeye devam edin.

Uygulamalarınızı modernleştirme

Uygulamalarınız için hedef API seviyesini güncellediğinizde, uygulamalarınızı modernize ederek kullanıcılarınızı memnun etmek için en son platform özelliklerini kullanmayı düşünün.

  • Kamerayı en iyi şekilde kullanmak için beta sürümünde olan CameraX'i kullanabilirsiniz.
  • En iyi uygulamaları takip etmenize, ortak metin kodları yazmaktan kurtulmanıza ve karmaşık görevleri basitleştirmenize yardımcı olması için Jetpack bileşenlerini kullanın. Böylece, asıl önem verdiğiniz şey olan koda odaklanabilirsiniz.
  • Daha iyi uygulamaları daha hızlı ve daha az kodla yazmak için Kotlin'i kullanın.
  • Gizlilikle ilgili şartlara ve en iyi uygulamalara uyduğunuzdan emin olun.
  • Uygulamalarınıza koyu tema desteği ekleyin.
  • Uygulamalarınıza hareketle gezinme desteği ekleyin.
  • Uygulamanızı Google Cloud Messaging'den (GCM) Firebase Cloud Messaging'in en yeni sürümüne taşıyın.
  • Gelişmiş pencere yönetiminden yararlanın.

SDK'larınızı ve kitaplıklarınızı kontrol edip güncelleme

Üçüncü taraf SDK bağımlılıklarınızın API 31'i desteklediğinden emin olun: Bazı SDK sağlayıcılar bunu manifestlerinde yayınlar, diğerleri ise ek araştırma gerektirir. API 31'i desteklemeyen bir SDK kullanıyorsanız sorunu çözmek için SDK sağlayıcıyla birlikte çalışmayı önceliklendirin.

Ayrıca, uygulamanızın veya oyununuzun targetSdkVersion özel Android platform kitaplıklarına erişimi kısıtlayabileceğini unutmayın. Ayrıntılı bilgi için NDK Apps Linking to Platform Libraries (Platform Kitaplıklarına Bağlanan NDK Uygulamaları) başlıklı makaleyi inceleyin.

Ayrıca, kullandığınız Android Destek Kitaplığı sürümünde olabilecek kısıtlamaları da doğrulamanız gerekir. Her zaman olduğu gibi, Android Destek Kitaplığı'nın ana sürümü ile uygulamanızın compileSdkVersion arasında uyumluluk olduğundan emin olmanız gerekir.

targetSdkVersion değerini, Destek Kitaplığı'nın ana sürümünden küçük veya ona eşit seçmenizi öneririz. En son uyumluluk özelliklerinden ve hata düzeltmelerinden yararlanmak için yakın zamanda yayınlanmış uyumlu bir Destek Kitaplığı'na güncelleme yapmanızı öneririz.

Uygulamanızı test etme

Uygulamanızın API düzeyini ve özelliklerini uygun şekilde güncelledikten sonra bazı temel kullanım alanlarını test etmeniz gerekir. Aşağıdaki öneriler kapsamlı olmamakla birlikte test sürecinize rehberlik etmeyi amaçlamaktadır. Test yaparak aşağıdakilerden emin olmanızı öneririz:

  • Uygulamanızın API 29'da hatasız veya uyarı olmadan derlenmesi
  • Uygulamanızın, kullanıcının izin isteklerini reddettiği durumlara yönelik bir stratejisi olmalı ve kullanıcıdan izin istemelidir. Bunu yapmak için:

    • Uygulamanızın Uygulama Bilgileri ekranına gidin ve her bir izni devre dışı bırakın.
    • Uygulamayı açın ve kilitlenme olmadığından emin olun.
      • Temel kullanım alanı testlerini gerçekleştirin ve gerekli izinlerin yeniden istenmesini sağlayın.
  • Doz'u, hiç hata olmadan beklenen sonuçlarla uyguluyor.

    • adb'yi kullanarak uygulamanız çalışırken test cihazınızı Doze moduna alın.
      • Firebase Cloud Messaging mesajları tetikleyen kullanım durumlarını test edin.
      • Alarmlar veya İşler kullanan kullanım durumlarını test edin.
      • Arka plan hizmetlerine olan bağımlılıkları ortadan kaldırın.
    • Uygulamanızı Uygulama Bekletme moduna ayarlama
      • Firebase Cloud Messaging mesajları tetikleyen kullanım durumlarını test edin.
      • Alarmlar veya İşler kullanan kullanım durumlarını test edin.
  • Çekilen yeni fotoğrafları / videoları işliyor

    • Uygulamanızın kısıtlanmış ACTION_NEW_PICTURE ve ACTION_NEW_VIDEO yayınlarını doğru şekilde işlediğinden (yani JobScheduler işlerine taşındığından) emin olun.
    • Bu etkinliklere bağlı olan tüm kritik kullanım alanlarının çalışmaya devam ettiğinden emin olun.
  • Dosyaların diğer uygulamalarla paylaşılmasını yönetir. - Dosya verilerini başka bir uygulamayla (aynı geliştiricinin başka bir uygulamasıyla bile) paylaşan tüm kullanım alanlarını test edin.

    • İçeriğin diğer uygulamada görünür olduğunu ve çökmelere neden olmadığını test edin.

Daha fazla bilgi

Google Play Console'da e-posta listesine kaydolun. Böylece aylık iş ortağı bültenimiz de dahil olmak üzere Android ve Google Play'den önemli güncellemeleri ve duyuruları size gönderebiliriz.