Uyumluluk çerçevesiyle ilgili değişiklikler (Android?)

1. Şekil. Geliştirici seçeneklerindeki Uygulama Uyumluluğu Değişiklikleri ekranında, açıp kapatabileceğiniz değişiklikler listelenir.

Bu sayfada, Android 12'deki (API düzeyi 31) uyumluluk çerçevesinin bir parçası olan her davranış değişikliği açıklanmaktadır. Android 12'yi desteklemeye ve hedeflemeye hazırlanırken uygulamanızı test etmek ve hatalarını ayıklamak için bu listeyi geliştirici seçenekleri ve ADB komutlarıyla birlikte kullanın.

Uyumluluk çerçevesi araçlarını kullanarak yapabileceklerinizden bazıları şunlardır:

  • Uygulamanın targetSdkVersion'ını değiştirmeden hedeflenen değişiklikleri test edin. Mevcut uygulamanız üzerindeki etkiyi değerlendirmek için açma/kapatma düğmelerini kullanarak belirli hedefli davranış değişikliklerini zorunlu olarak etkinleştirebilirsiniz.
  • Testinizi yalnızca belirli değişikliklere odaklayın. Açma/kapatma düğmeleri, hedeflenen tüm değişiklikleri tek seferde ele almak yerine, test etmek istediğiniz değişiklikler dışındaki tüm hedeflenen değişiklikleri devre dışı bırakmanıza olanak tanır.
  • adb aracılığıyla açma/kapatma düğmelerini yönetme Otomatik test ortamınızda açılıp kapatılabilen değişiklikleri etkinleştirmek ve devre dışı bırakmak için adb komutlarını kullanabilirsiniz.
  • Standart değişiklik kimliklerini kullanarak daha hızlı hata ayıklama. Her açılıp kapatılabilir değişiklik, günlük çıktısında temel nedeni hızlıca ayıklamak için kullanabileceğiniz benzersiz bir kimliğe ve ada sahiptir.

Bu kullanım alanlarının her birinde araçları kullanmayla ilgili tüm ayrıntılar için Uyumluluk çerçevesi araçları başlıklı makaleyi inceleyin.

Uyumluluk çerçevesinde yer alan davranış değişiklikleri

Bu bölümdeki listede, Android 12'deki uyumluluk çerçevesine dahil edilen her davranış değişikliği açıklanmaktadır.

Değişiklik listesini Varsayılan Durum'a göre filtreleyebilirsiniz.

Android 12'de uyumluluk çerçevesine eklenen davranış değişiklikleri

ALWAYS_SANDBOX_DISPLAY_APIS

Değişiklik Kimliği: 185004937
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Etkinleştirildiğinde, pencere modu ne olursa olsun bir pakete Display API korumalı alanı uygular. Görüntüleme API'leri her zaman uygulama sınırlarını sağlar.

Bu değişiklik hakkında daha fazla bilgi edinmek için Android 12 davranış değişiklikleri sayfasındaki Kullanımdan kaldırılan görüntüleme yöntemleri bölümüne bakın.

AUTOFILL_NON_TEXT_REQUIRES_ON_RECEIVE_CONTENT_LISTENER

Değişiklik Kimliği: 163400105
Varsayılan Durum: Android 12 (API düzeyi 32) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12'den itibaren platform, geliştirilmiş otomatik doldurma çerçevesini kullanarak metin dışı öneriler (ör. resimler) sağlayabilir (bkz. otomatik doldurma hizmetleri). Bir uygulamanın bu önerileri işleyebilmesi için normalde OnReceiveContentListener API'sini uygulaması gerekir.

Daha önce InputConnection.commitContent(InputContentInfo, int, Bundle) API'sini uygulayan uygulamaların bu API'yi daha sorunsuz bir şekilde kullanabilmesi için OnReceiveContentListener henüz uygulama tarafından uygulanmamışsa bu API'yi yedek olarak yeniden kullanırız. Bu yedek yalnızca Android 12'de (API düzeyi 31) etkinleştirilir. Bu değişiklik kimliği, geri dönüşü devre dışı bırakır. Bu nedenle, Android 12'yi (API düzeyi 32) ve sonraki sürümleri hedefleyen uygulamaların, metin dışı önerileri kabul etmek için OnReceiveContentListener API'sini uygulaması gerekir.

BLOCK_FLAG_SLIPPERY

Değişiklik Kimliği: 157929241
Varsayılan Durum: Tüm uygulamalar için etkin.

Android 12 (API düzeyi 31) üzerinde çalışan uygulamalar için FLAG_SLIPPERY uygulamadaki pencerelerle birlikte kullanılıp kullanılmadığını kontrol eder. Bu işaretin, desteklenmeyen bir alan olduğundan yalnızca sistem bileşenleri tarafından kullanılması beklenir. Bu durumda, söz konusu özellik kısıtlanır.

BLOCK_GPS_STATUS_USAGE

Değişiklik kimliği: 144027538
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda tüm GpsStatus API kullanımı, GnssStatus API'leriyle değiştirilmelidir.

BLOCK_IMMUTABLE_PENDING_INTENTS

Değişiklik Kimliği: 171317480
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, konum API'lerine iletilen değişmez PendingIntent nesneleri IllegalArgumentException. oluşturur.

BLOCK_PENDING_INTENT_SYSTEM_API_USAGE

Değişiklik Kimliği: 169887240
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda LocationRequest sistem API'leri, PendingIntent konum istekleriyle kullanılamaz.

BLOCK_UNTRUSTED_TOUCHES

Değişiklik kimliği: 158002302
Varsayılan durum: Tüm uygulamalar için etkin.

Android 12, sistem güvenliğini ve iyi bir kullanıcı deneyimini korumak için uygulamaların, bir yerleşimin uygulamayı güvenli olmayan bir şekilde engellediği dokunma etkinliklerini kullanmasını engeller.

Bu değişiklik hakkında daha fazla bilgi edinmek için Güvenilmeyen dokunma etkinlikleri engelleniyor başlıklı makaleyi inceleyin.

CALL_ACTIVITY_RESULT_BEFORE_RESUME

Değişiklik kimliği: 78294732
Varsayılan durum: Android 12'yi (API düzeyi 32) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirildi.

Android 12'yi (API düzeyi 32) ve sonraki sürümleri hedefleyen uygulamalarda, bir etkinliğin devam ettirilmeden hemen önce etkinlik sonucunu almasını sağlamak için etkinlik sonucu yaşam döngüsünü düzeltir.

CAMERA_MIC_INDICATORS_NOT_PRESENT

Değişiklik Kimliği: 162547999
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Bu cihazın kamera ve mikrofon göstergelerini desteklediğini belirtir. Mevcutsa false olur. Bunun nedeni, Değişiklik Kimliği mevcut değilse CompatChanges#isChangeEnabled yönteminin true değerini döndürmesidir.

CANNOT_INSTALL_WITH_BAD_PERMISSION_GROUPS

Değişiklik kimliği: 146211400
Varsayılan durum: Android 12'yi (API düzeyi 32) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 32) ve sonraki sürümleri hedefleyen uygulamalarda, izin grupları hatalı biçimlendirilmişse paket yöneticisi paketi yüklemez. İzin grupları yalnızca sertifika paylaşan uygulamalar arasında paylaşılmalıdır. Bir izin bir gruba aitse bu grup da tanımlanmalıdır.

CHANGE_ID_AUTH_STATE_DENIED

Değişiklik kimliği: 181350407
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen istemci uygulamaları, yetkilendirme reddedildi durumundayken bir nano uygulamaya mesaj göndermeye çalıştıklarında SecurityException istisnası oluşturulur.

CHANGE_ID_SAMPLING_RATE_SENSORS_PERMISSION

Değişiklik kimliği: 136069189
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, SecurityException izni yoksa, hata ayıklama modunda çalışıyorsa ve 200 Hz'den daha hızlı örnekleme hızları istiyorsa HIGH_SAMPLING_RATE_SENSORS hatası verilir.

DELIVER_HISTORICAL_LOCATIONS

Değişiklik Kimliği: 73144566
Varsayılan Durum: Android 12 (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, konum istemcileri bazı durumlarda geçmiş konumları (şu andan önceki konumlar) alabilir.

DISPLAY_INFO_NR_ADVANCED_SUPPORTED

Değişiklik Kimliği: 181658987
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için TelephonyDisplayInfo'deki değişikliklerle ilgili geriye dönük uyumluluk sağlar.

DISPLAY_MODE_RETURNS_PHYSICAL_REFRESH_RATE

Değişiklik Kimliği: 170503758
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, platform daha tercih edilebilir bir durum varsa (ör. uygulama Surface.setFrameRate(float, int) çağrısı yaptıysa) uygulamanın kare hızını yenileme hızının bir böleni olacak şekilde azaltabilir. Uygulamalar, azaltılmış kare hızında Choreographer.postFrameCallback(Choreographer.FrameCallback) geri çağırmaları ve geri basıncı deneyimler. Uygulamalar, ekran yenileme hızının ne olduğunu öğrenmek için Display.getRefreshRate() ve Display.Mode.getRefreshRate() kullanır. Display.getRefreshRate(), uygulamaların kare hızını doğru şekilde ayarlamasına olanak tanımak için her zaman fiziksel ekran yenileme hızı yerine uygulama kare hızını döndürür. Display.Mode.getRefreshRate(), önceki bir sürüm için derlenirse uygulamanın kare hızını, Android 12'den (API düzeyi 31) itibaren ise fiziksel ekranın yenileme hızını döndürür.

DOWNSCALED

Değişiklik Kimliği: 168419799
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Bu değişiklik, uygulama başına arabellek küçültme ile ilgili tüm değişikliklerin denetleyicisidir. Bu değişikliğin etkinleştirilmesi, aşağıdaki ölçeklendirme faktörlerinin uygulanmasına olanak tanır:

Bu değişiklik bir uygulama paketi için etkinleştirildiğinde uygulama, etkinleştirilmiş en yüksek ölçeklendirme faktörüne zorunlu olarak yeniden boyutlandırılır. Örneğin, hem% 80 hem de% 70 (DOWNSCALE_80 ve DOWNSCALE_70) etkinleştirilmişse %80 kullanılır.

DOWNSCALE_30

Değişiklik kimliği: 189970040
Varsayılan durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın, gerçek ekranın dikey ve yatay çözünürlüğünün% 30'una sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_35

Değişiklik Kimliği: 189969749
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 35'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_40

Değişiklik Kimliği: 189970038
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 40'ı kadar çözünürlüğe sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_45

Değişiklik Kimliği: 189969782
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 45'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_50

Değişiklik Kimliği: 176926741
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın, gerçek ekranın dikey ve yatay çözünürlüğünün% 50'sine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_55

Değişiklik kimliği: 189970036
Varsayılan durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 55'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_60

Değişiklik Kimliği: 176926771
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 60'ına sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_65

Değişiklik kimliği: 189969744
Varsayılan durum: Tüm uygulamalar için devre dışı.

DOWNSCALED de etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 65'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_70

Değişiklik Kimliği: 176926829
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 70'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_75

Değişiklik Kimliği: 189969779
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 75'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_80

Değişiklik Kimliği: 176926753
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED de etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 80'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_85

Değişiklik Kimliği: 189969734
Varsayılan Durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi, uygulamanın gerçek ekranın dikey ve yatay çözünürlüğünün% 85'ine sahip bir ekranda çalıştığını varsaymasına neden olur.

DOWNSCALE_90

Değişiklik kimliği: 182811243
Varsayılan durum: Tüm uygulamalar için devre dışı.

DOWNSCALED da etkinleştirildiğinde, bir paket için bu değişikliğin etkinleştirilmesi uygulamanın, gerçek ekranın dikey ve yatay çözünürlüğünün% 90'ına sahip bir ekranda çalıştığını varsaymasına neden olur.

DO_NOT_DOWNSCALE_TO_1080P_ON_TV

Değişiklik kimliği: 157629738
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen Android TV uygulamalarının, 1080p'den büyük pencere boyutları da dahil olmak üzere tüm pencere boyutlarını işlemesi beklenir. Android'in eski sürümlerini hedefleyen uygulamalar 1080p'den daha büyük pencereler almayı beklemez. Bu nedenle, gerektiğinde pencereleri 1080p'ye küçültülür.

DROP_CLOSE_SYSTEM_DIALOGS

Değişiklik kimliği: 174664120
Varsayılan durum: Tüm uygulamalar için etkin.

Uygulamalar ve sistemle etkileşimde bulunurken kullanıcı kontrolünü iyileştirmek için ACTION_CLOSE_SYSTEM_DIALOGS intent işlemi Android 12'den itibaren kullanımdan kaldırıldı.

Bu değişiklik hakkında daha fazla bilgi edinmek için Uygulamalar sistem iletişim kutularını kapatamıyor başlıklı makaleyi inceleyin.

ENABLE_CHECKS_FOR_PRIVATE_FILES

Değişiklik kimliği: 172100307
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar, medya sağlayıcıyı kullanarak özel dosyaları ekleyemez veya güncelleyemez.

ENABLE_DEFERRED_SCAN

Değişiklik kimliği: 180326732
Varsayılan durum: Android 12 (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

MediaProvider#update() kapsamında tetiklenen taramayı ertelemek için bu seçeneği etkinleştirin.

ENABLE_GET_CALL_STATE_PERMISSION_PROTECTION

Değişiklik kimliği: 157233955
Varsayılan durum: Android 12 (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için TelecomManager#getCallState, TelephonyManager.getCallStateForSubscription() ve TelephonyCallback.CallStateListener gibi arama durumunu sorgulayan ve bildiren API'lerde READ_PHONE_STATE korumasını etkinleştirir.

ENABLE_GET_PHONE_ACCOUNT_PERMISSION_PROTECTION

Değişiklik kimliği: 183407956
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için getPhoneAccount(PhoneAccountHandle) üzerinde READ_PHONE_NUMBERS veya READ_PRIVILEGED_PHONE_STATE korumalarını etkinleştirir.

ENABLE_INCLUDE_ALL_VOLUMES

Değişiklik Kimliği: 182734110
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Yakın zamanda çıkarılan bir birimdeki dosyaların veritabanı satırlarını MediaProvider#query'ya dahil etmek için bu seçeneği etkinleştirin.

ENABLE_RAW_MANAGE_EXTERNAL_STORAGE_ACCESS

Değişiklik Kimliği: 178209446
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Manifest.permission.MANAGE_EXTERNAL_STORAGE iznine sahip uygulamaların ham harici depolama erişimi istemesine izin vermek için bu seçeneği etkinleştirin.

ENFORCE_MINIMUM_WINDOW_ON_INEXACT_ALARMS

Değişiklik Kimliği: 185199076
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, tüm kesin olmayan alarmların minimum aralık boyutuna sahip olması gerekir. Bu boyutun birkaç dakika olması beklenir. Pratikte, daha küçük pencereler gerektiren tüm alarmlar tam alarmlarla aynıdır ve setExact(int, long, PendingIntent) gibi sağlanan ilgili API'leri kullanmalıdır. Daha kısa aralıklar belirtilen, kesin olmayan alarmların aralıkları sistem tarafından uzatılır.

ENFORCE_NATIVE_SHARED_LIBRARY_DEPENDENCIES

Değişiklik Kimliği: 142191088
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamaların, uses-native-library etiketini kullanarak cihaz üreticisi tarafından tanımlanan genel yerel paylaşılan kitaplıklara bağımlılıklarını AndroidManifest.xml içinde bildirmesi gerekir. Bağımlılıklardan herhangi biri karşılanamıyorsa (ör. bağımlılıklardan biri mevcut değilse) paket yöneticisi uygulamayı yüklemez. Bağımlılık, etiketteki android:required özelliği kullanılarak isteğe bağlı olarak belirtilebilir. Bu durumda, bağımlılığın karşılanamaması yüklemeyi durdurmaz.

Yüklendikten sonra bir uygulamaya yalnızca uygulama manifestinde belirtilen yerel paylaşılan kitaplıklar sağlanır. Uygulama manifestinde görünmeyen yerel bir paylaşılan kitaplıkta dlopen işlevinin çağrılması, cihazda gerçekten mevcut olsa bile başarısız olur.

ENFORCE_STRICT_QUERY_BUILDER

Değişiklik kimliği: 143231523
Varsayılan durum: Tüm uygulamalar için devre dışı.

Etkinleştirildiğinde SQLiteQueryBuilder, tüm CalendarProvider2 sorgu seçimlerini kötü amaçlı bağımsız değişkenlere karşı doğrular.

FGS_BG_START_RESTRICTION_CHANGE_ID

Değişiklik Kimliği: 170668199
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için, uygulamaların arka planda çalışırken ön plan hizmetlerini başlatabileceği zamanı kısıtlar.

FGS_START_EXCEPTION_CHANGE_ID

Değişiklik Kimliği: 174041399
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için, bir uygulama arka planda çalışırken ön plan hizmeti başlatmaya çalıştığında sistemin IllegalStateException oluşturmasını sağlar.

FINISH_INPUT_NO_FALLBACK_CONNECTION

Değişiklik No: 156215187
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, cihaz non-interactive olduğunda InputConnection işlemini tamamlayın.

Mevcut input method tarafından etkinleştirilirse cihazlar etkileşimsiz hale geldiğinde mevcut giriş bağlantısı finished olur.

Etkinleştirilmezse cihazlar etkileşimsiz hale geldiğinde mevcut giriş bağlantısı sessizce devre dışı bırakılır ve cihaz tekrar etkileşimli hale geldiğinde bir onFinishInput() ve onStartInput() çifti gönderilir.

FORCE_DISABLE_HEVC_SUPPORT

Değişiklik Kimliği: 174227820
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Bir uygulamanın HEVC medya özelliğini desteklemesini zorla devre dışı bırakma Uygulamalar, destekledikleri medya özelliklerini manifestlerinde belirtmelidir. Ancak bu işaret, bir uygulamayı HEVC'yi desteklememeye zorlamak için kullanılabilir. Bu nedenle, HEVC'de kodlanmış medyaya erişirken transkodlama zorunlu kılınır. Bu işaretin ayarlanması, uygulamalar için işletim sistemi düzeyindeki varsayılan ayarları geçersiz kılar. Bu özellik varsayılan olarak devre dışıdır. Bu durumda, işletim sistemi varsayılanları öncelikli olur. Hem bu işaret hem de FORCE_ENABLE_HEVC_SUPPORT etkinse işletim sistemi her iki işareti de yoksayar.

FORCE_ENABLE_HEVC_SUPPORT

Değişiklik kimliği: 174228127
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Bir uygulamanın HEVC medya özelliğini desteklemesini zorunlu kılma. Uygulamalar, destekledikleri medya özelliklerini manifestlerinde belirtmelidir. Ancak bu işaret, bir uygulamayı HEVC'yi desteklemeye zorlamak için kullanılabilir. Böylece, HEVC'de kodlanmış medyaya erişirken transkodlama önlenir. Bu işareti ayarlamak, uygulamalar için işletim sistemi düzeyindeki tüm varsayılanları geçersiz kılar. Varsayılan olarak devre dışıdır. Bu durumda, işletim sistemi varsayılanları öncelikli olur. Hem bu işaret hem de FORCE_DISABLE_HEVC_SUPPORT etkinleştirilirse işletim sistemi her iki işareti de yoksayar.

FORCE_NON_RESIZE_APP

Değişiklik No: 181136395
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Uygulandığı paketlerin yeniden boyutlandırılamamasını zorunlu kılar.

FORCE_RESIZE_APP

Değişiklik kimliği: 174042936
Varsayılan durum: Tüm uygulamalar için devre dışı.

Uygulandığı paketlerin yeniden boyutlandırılmasını zorunlu kılar. Yalnızca tam ekran pencere modunda yeniden boyutlandırmaya izin veriyoruz ancak uygulamayı yeniden boyutlandırılabilir çoklu pencere moduna zorlamıyoruz.

HIDE_PROP_ICUBINARY_DATA_PATH

Değişiklik kimliği: 171979766
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için android.icu.impl.ICUBinary.dataPath özelliğine erişimi kaldırır.

IGNORE_ALLOW_BACKUP_IN_D2D

Değişiklik Kimliği: 183147249
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, cihazdan cihaza (D2D) geçişler sırasında uygulamalar için android:allowBackup yoksayılır.

IGNORE_FULL_BACKUP_CONTENT_IN_D2D

Değişiklik kimliği: 180523564
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, android:fullBackupContent kullanılarak belirtilen dahil etme ve hariç tutma kuralları cihazdan cihaza (D2D) aktarımlar sırasında yoksayılır.

IME_AUTOFILL_DEFAULT_SUPPORTED_LOCALES_IS_EMPTY

Değişiklik kimliği: 169273070
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda getSupportedLocales() artık ayarlanmadığında varsayılan sistem yerel ayarı yerine boş bir yerel ayar listesi döndürüyor.

IS_BACKUP_SERVICE_ACTIVE_ENFORCE_PERMISSION_IN_SERVICE

Değişiklik kimliği: 158482162
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, BACKUP için gereken isBackupServiceActive() izni, BackupManager'da istemci tarafı yerine hizmet tarafında zorunlu kılınır.

KEYSTORE_OPERATION_CREATION_MAY_FAIL

Değişiklik Kimliği: 169897160
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Etkinleştirildiğinde, yeni budama stratejisine göre anahtar deposu işlemi oluşturma başarısız olabilir. Anahtar deposu, kriptografik işlemlerin oluşturulmasının her zaman başarılı olduğu varsayımıyla çalışıyordu. Ancak KeyMint arka ucunda yalnızca sınırlı sayıda işlem yuvası vardır.

"Sınırsız" işlem yuvası görünümünü korumak için, kullanılabilir işlem yuvası yoksa Keystore daemon, en son kullanılan işlemleri temizler. Bu nedenle, iyi performans gösteren işlemler erken sonlandırılabilir. Bu durum, AndroidKeystore'u hizmet reddi (DoS) ve istenmeyen canlı kilitlenmeye karşı savunmasız hale getiriyordu. Örneğin, güç yönetimi optimizasyonları nedeniyle aynı anda birden fazla uygulama uyandığında ve kripto işlemleri gerçekleştirmeye çalıştığında, herhangi bir ilerleme kaydetmeden birbirlerinin işlemlerini sonlandırmaya başlarlar.

Kilitlenmeleri önlemek ve hizmet reddi (DoS) girişimlerini engellemek için, kısa süre içinde az sayıda işlem yuvası kullanan istemcileri tercih edecek şekilde budama stratejisini değiştirdik. Sonuç olarak, 5 saniyeden uzun süre etkin olmayan tek işlemler neredeyse her zaman budama stratejisinden etkilenmeden tamamlanır. Dosya sistemi şifrelemeyle ilgili bazı işlemler, bu işlemleri bile budayabilir ancak bu durum son derece nadirdir. Bu yeni budama stratejisi işleminin yan etkisi olarak, istemcinin budama gücü mevcut işlemlerin tamamından düşükse oluşturma işlemi artık başarısız olabilir.

Budama stratejisi: Uygun bir aday bulmak için, arayan ve mevcut her işlem için ceza hesaplarız. Ceza, budama gücünün (çağrıda bulunan) veya budama direncinin (mevcut işlem) tersidir. Arayanın bir işlemi budayabilmesi için kendi cezasından daha yüksek bir cezaya sahip işlem bulması gerekir. Budama stratejisi hakkında daha fazla bilgi için operation.rs uygulamasını inceleyin. Android 11 (API düzeyi 30) ve önceki sürümlerde KeyStore2, ücretsiz işlem yuvası için KeyStore daemon'a yoklama isteği gönderir. Android 11 (API düzeyi 30) ve önceki sürümleri hedefleyen uygulamalarda, şifre ve imza nesnesi başlatma işlemi her zaman başarılı olur. Ancak, işlem almak daha uzun sürebilir. Tüm Android sürümleri, daha adil işlem yuvası planlamasından ve bir işlemi başarıyla tamamlama şansının artmasından yararlanır.

LOCK_DOWN_CLOSE_SYSTEM_DIALOGS

Değişiklik kimliği: 174664365
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, uygulama android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS iznine de sahip olmadığı sürece Intent.ACTION_CLOSE_SYSTEM_DIALOGS gönderilemez. Bu sürümün, uygulama Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedeflemeye başladığında Intent.ACTION_CLOSE_SYSTEM_DIALOGS amacını göndermeyi durdurmasını bekleyen #DROP_CLOSE_SYSTEM_DIALOGS sürümünün daha kısıtlayıcı bir versiyonu olduğunu unutmayın.

LOCK_DOWN_COLLAPSE_STATUS_BAR

Değişiklik Kimliği: 173031413
Varsayılan Durum: Android 12 (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, güvenlik nedeniyle durum çubuğu panellerinin daraltılması için Manifest.permission.STATUS_BAR izni gerekir. Bu durum, kullanıcının önemli bildirimlere erişmesini engellemek için kötü amaçlı yazılımlar tarafından istismar ediliyordu.

LOW_POWER_EXCEPTIONS

Değişiklik Kimliği: 168936375
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, düşük güç olarak işaretlenen tüm LocationRequest nesneleri, arayanın LOCATION_HARDWARE izni yoksa isteğin düşük güç kısmını sessizce bırakmak yerine istisna oluşturur.

MISSING_EXPORTED_FLAG

Değişiklik kimliği: 150232615
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, bir amaç filtresi tanımlandığında android:exported özelliği için açık bir değer belirtilmelidir.

Bu değişiklik hakkında daha fazla bilgi edinmek için Bileşenlerin daha güvenli şekilde dışa aktarılması başlıklı makaleyi inceleyin.

NATIVE_HEAP_POINTER_TAGGING_APP_ZYGOTE

Değişiklik kimliği: 207557677
Varsayılan durum: Android 12'yi (API düzeyi 32) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 32) ve sonraki sürümleri hedefleyen uygulamalarda, AppZygote sürecindeki ve alt süreçlerindeki yerel yığın ayırmaları, en anlamlı baytta sıfır olmayan bir etiket kullanır.

Bu değişiklik hakkında daha fazla bilgi edinmek için Etiketlenmiş İşaretçiler başlıklı makaleyi inceleyin.

NATIVE_HEAP_ZERO_INIT

Değişiklik No: 178038272
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Yerel yığın bellek ayırmalarının otomatik olarak sıfırla başlatılmasını etkinleştirin.

NATIVE_MEMTAG_ASYNC

Değişiklik kimliği: 135772972
Varsayılan durum: Tüm uygulamalar için devre dışı.

Bu işlemde eşzamansız (ASYNC) bellek etiketi kontrolünü etkinleştirin. Bu işaret yalnızca ARM Bellek Etiketleme Uzantısı'nı (MTE) destekleyen donanımları etkiler.

NATIVE_MEMTAG_SYNC

Değişiklik Kimliği: 177438394
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Bu işlemde eşzamanlı (SYNC) bellek etiketi kontrolünü etkinleştirir. Bu işaret yalnızca ARM Bellek Etiketleme Uzantısı'nı (MTE) destekleyen donanımları etkiler. Hem NATIVE_MEMTAG_ASYNC hem de bu seçenek etkinleştirilirse bu seçenek öncelikli olur ve SYNC modunda MTE etkinleştirilir.

NEVER_SANDBOX_DISPLAY_APIS

Değişiklik kimliği: 184838306
Varsayılan durum: Tüm uygulamalar için devre dışı.

Etkinleştirildiğinde, Display API sanal alanının, letterbox veya SCM etkinliği için uygulanmasını engeller. Display API'leri, DisplayArea sınırları sağlamaya devam edecektir.

Bu değişiklik hakkında daha fazla bilgi edinmek için Android 12 davranış değişiklikleri sayfasındaki Kullanımdan kaldırılan görüntüleme yöntemleri bölümüne bakın.

NOTIFICATION_CANCELLATION_REASONS

Değişiklik Kimliği: 175319604
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Bildirim dinleyicilerin daha spesifik olan yeni iptal nedenlerini anlamasına olanak tanır.

NOTIFICATION_TRAMPOLINE_BLOCK

Değişiklik Kimliği: 167676448
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Uygulama performansını ve kullanıcı deneyimini iyileştirmek için Android 12'yi hedefleyen uygulamalar, hizmetleri veya yayın alıcıları bildirim trampolinleri olarak kullanamaz.

Bu değişiklik hakkında daha fazla bilgi edinmek için Notification trampolines cannot be created from services or broadcast receivers (Bildirim trambolinleri hizmetlerden veya yayın alıcılarından oluşturulamaz) başlıklı makaleyi inceleyin.

NULL_TELEPHONY_THROW_NO_CB

Değişiklik kimliği: 182185642
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Mevcut işlem için hedef SDK sürümünün Android 12 (API düzeyi 31) veya sonraki sürümler olup olmadığını kontrol etmek için kullanılır.

Aşağıdaki yöntemler için geçerlidir:

OVERRIDE_MIN_ASPECT_RATIO

Değişiklik Kimliği: 174042980
Varsayılan Durum: Tüm uygulamalar için devre dışı.

Bu değişiklik, belirli bir minimum en-boy oranını zorunlu kılan tüm değişikliklerin kontrol noktasıdır. Bu değişikliğin etkinleştirilmesiyle aşağıdaki minimum en-boy oranlarının uygulanmasına izin verilir:

Bu değişiklik bir uygulama paketi için etkinleştirildiğinde, uygulamanın manifestinde verilen minimum en boy oranı, uygulamanın manifest değeri daha yüksek olmadığı sürece etkinleştirilen en büyük en boy oranıyla geçersiz kılınır.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

Değişiklik kimliği: 180326787
Varsayılan durum: Tüm uygulamalar için devre dışı.

OVERRIDE_MIN_ASPECT_RATIO de etkinleştirildiğinde, bu değişikliğin bir paket için etkinleştirilmesi, etkinliğin minimum en-boy oranını OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE tarafından tanımlanan büyük bir değere ayarlar.

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

Değişiklik Kimliği: 180326845
Varsayılan Durum: Tüm uygulamalar için devre dışı.

OVERRIDE_MIN_ASPECT_RATIO de etkinleştirildiğinde, bu değişikliğin bir paket için etkinleştirilmesi, etkinliğin minimum en-boy oranını OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE tarafından tanımlanan orta bir değere ayarlar.

PENDING_INTENT_EXPLICIT_MUTABILITY_REQUIRED

Değişiklik kimliği: 160794467
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, uygulamanızın oluşturduğu her PendingIntent nesnesinin değişkenliğini belirtmeniz gerekir. Bu ek koşul, uygulamanızın güvenliğini artırır.

Bu değişiklik hakkında daha fazla bilgi edinmek için Bekleyen amaçlar değişebilirliği bildirmelidir başlıklı makaleyi inceleyin.

PREVENT_SETTING_PASSWORD_QUALITY_ON_PARENT

Değişiklik kimliği: 165573442
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen yönetici uygulamaları, DevicePolicyManager.setPasswordQuality(ComponentName, int) çağrılarak elde edilen DevicePolicyManager örneğinde şifre kalitesini ayarlamak için DevicePolicyManager.getParentProfileInstance(ComponentName) kullanamaz. Bunun yerine, cihaz genelinde ayrıntılı olmayan şifre koşulları belirlemek için DevicePolicyManager.setRequiredPasswordComplexity(int)'yı kullanmalıdırlar.

RATE_LIMIT_TOASTS

Değişiklik kimliği: 174840628
Varsayılan durum: Bu değişiklik etkinleştirilemez veya devre dışı bırakılamaz. Yalnızca uyumluluk çerçevesi tarafından kaydedilir.

Kullanıcının sınırlı bir süre içinde çok fazla bildirimle karşılaşmasını önlemek için Toast.show() çağrılarının sayısıyla ilgili sıklık sınırlaması uygulanmasını sağlar. Belirli bir zaman aralığında izin verilenden daha fazla bildirim gösterme girişimi, bildirimin silinmesiyle sonuçlanır.

REQUIRE_EXACT_ALARM_PERMISSION

Değişiklik kimliği: 171306433
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, Manifest.permission.SCHEDULE_EXACT_ALARM izni olmalıdır. Bu izin, setExactAndAllowWhileIdle(int, long, PendingIntent) ve setAlarmClock(AlarmClockInfo, PendingIntent) gibi tam alarm ayarlamaya yönelik API'lerin kullanılabilmesi için gereklidir.

REQUIRE_READ_PHONE_STATE_PERMISSION_FOR_ACTIVE_DATA_SUB_ID

Değişiklik kimliği: 182478738
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamaların TelephonyCallback.ActiveDataSubscriptionIdListener işlevini çağırabilmesi için Manifest.permission.READ_PHONE_STATE iznine sahip olması gerekir.

REQUIRE_READ_PHONE_STATE_PERMISSION_FOR_CELL_INFO

Değişiklik Kimliği: 184323934
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamaların TelephonyCallback.CellInfoListener işlevini çağırabilmesi için Manifest.permission.READ_PHONE_STATE iznine sahip olması gerekir.

REQUIRE_READ_PHONE_STATE_PERMISSION_FOR_DISPLAY_INFO

Değişiklik Kimliği: 183164979
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamaların TelephonyCallback.DisplayInfoListener işlevini çağırabilmesi için Manifest.permission.READ_PHONE_STATE iznine sahip olması gerekir.

RESTRICT_ADB_BACKUP

Değişiklik kimliği: 171032338
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirildi.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, hata ayıklanabilir olarak çalışan uygulamalar (android:debuggable, true olarak ayarlanmış) için adb backup otomatik olarak etkinleştirilir ve diğer uygulamalar tarafından kullanılamaz.

RESTRICT_DOMAINS

Değişiklik Kimliği: 175408749
Varsayılan Durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için uygulama bağlantıları doğrulama API'sinin güncellenmiş biçimi gereklidir. Bu şart, bir uygulamanın aşağıdaki öğelerin tümünü içeren bir amaç filtresinde alanları bildirmesi gerektiği anlamına gelir:

  • android:autoVerify="true"
  • Intent.ACTION_VIEW
  • Intent.CATEGORY_BROWSABLE
  • Intet.CATEGORY_DEFAULT
  • Diğer şemalar olmadan yalnızca IntentFilter.SCHEME_HTTP ve/veya IntentFilter.SCHEME_HTTPS

Android'in önceki sürümlerinde Intent.CATEGORY_BROWSABLE zorunlu değildi, başka şemalara izin veriliyordu ve herhangi bir amaç filtresinde autoVerify değerini true olarak ayarlamak, tüm amaç filtrelerinin autoVerify="true" olarak ayarlandığını örtülü olarak varsayıyordu.

SECURITY_EXCEPTION_ON_INVALID_ATTRIBUTION_TAG_CHANGE

Değişiklik kimliği: 151105954
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkinleştirilir.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalarda, attributionTags, noteOp(String, int, String), noteProxyOp(String, String) ve startOp(String, int, String)'e gönderilen tüm attributionTags'ların, yöntemlerin parametresi olarak belirtilen paketin manifestinde tanımlanması zorunlu kılınır.

Bu değişikliğin etkinleştirilmesi için hem paket çağrısının noteOp(String, int, String) hem de yöntemin parametresi olarak belirtilen paketin bu değişikliğin etkinleştirilmiş olması gerekir.

SELINUX_LATEST_CHANGES

Değişiklik Kimliği: 143539591
Varsayılan Durum: Android 12 (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12'yi (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar, en son SELinux değişikliklerini etkinleştirir. Android 12 (API düzeyi 31) veya daha yeni bir sürümü hedefleyen bir uygulama için bu değişikliğin devre dışı bırakılması etkisizdir. Paylaşılan kullanıcı kimliği kullanan uygulamalar için herhangi bir etkisi yoktur.

SETTINGS_API_V2

Değişiklik Kimliği: 178111421
Varsayılan Durum: Tüm uygulamalar için etkin.

AndroidManifest.xml dosyasındaki amaç filtrelerinde autoVerify=true olarak işaretlenen alanların doğrulanması için yeni kullanıcı tercihi API'si henüz mevcut platform önizlemesinde uygulanmamıştır. Şimdilik bu ChangeId'yi etkinleştirip adb shell pm set-app-links-user-selection ve benzer komutları kullanarak yeni kullanıcı tercihi değişikliklerini önizleyebilirsiniz.

USE_SHORT_FGS_USAGE_INTERACTION_TIME

Değişiklik kimliği: 183972877
Varsayılan durum: Android 12'yi (API düzeyi 31) veya sonraki sürümleri hedefleyen uygulamalarda etkin.

Android 12 (API düzeyi 31) ve sonraki sürümleri hedefleyen uygulamalar için, uygulamalar bir ön plan hizmeti başlattığında bekleme grubunu ACTIVE'ya yükseltmeden önce daha kısa bir zaman aşımı kullanılıp kullanılmayacağını belirler.