Tam ekran intent sınırları

Reklam spam'ini ve kimlik bilgisi avını önlemek amacıyla Android 14'ten itibaren, tam ekran bildirim göndermeyle ilgili varsayılan USE_FULL_SCREEN_INTENT izin yalnızca arama ve alarm işlevleri sunan uygulamalara verilebilir.

Android 14'te yüklenen tüm uygulamalarda USE_FULL_SCREEN_INTENT izni varsayılan olarak etkindir. Google Play Store, yükleme işleminden sonra arama veya alarm işlevi olmayan uygulamaların tam ekran intent (FSI) iznini iptal eder.

Android 13 veya önceki sürümlerin yüklü olduğu telefonlara yüklenen uygulamalarda USE_FULL_SCREEN_INTENT izni varsayılan olarak etkin kalır.

Kullanıcı izni

Android 14 ile uygulamalar, tam ekran bildirim gönderip gönderemeyeceklerini kontrol etmek için NotificationManager#canUseFullScreenIntent()'ı kullanabilir. Uygulamalar, tam ekran bildirim göndermek için kullanıcı izni almak üzere ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT kullanarak Şekil 1'de gösterildiği gibi Tam ekran intent'leri yönet ayarını başlatır:

fsi-ui

Şekil 1. Uygulamaların tam ekran intent'ler göndermesini etkinleştirmek için kullanıcı arayüzü.

Tam ekran intent'leri yönet ayarı, Özel Uygulama Erişimi altındaki Ayarlar menüsünde bulunur. Kullanıcılar bu kullanıcı arayüzüyle gerekirse bu izni iptal edebilir.

OEM koşulları

Android 14'te, uygulamalar için FSI izinleri varsayılan olarak etkindir. OEM'ler, hangi uygulamaların FSI izinlerine uygun olduğunu belirtmelidir. OEM'ler, üçüncü taraf uygulama mağazalarının PackageInstaller.SessionParams parametresini, özellikle de PERMISSION_STATE_DEFAULT, PERMISSION_STATE_DENIED ve PERMISSION_STATE_GRANTED parametrelerini kullanarak uygulamalarının FSI izinlerinin ilk izin durumlarını ayarlamasını sağlamalıdır.

Doğrulama

FSI sınırlarını doğrulamak için NotificationFullScreenIntentVerifierActivity.java'daki CTS Doğrulayıcı testini ve NotificationManagerTest.java'daki CTS testini kullanın.

Manuel testler

Uygulamanızda FSI sınırlarını manuel olarak test etmek için aşağıdaki adımları uygulayın:

  1. Uygulamanızın AndroidManifest.xml dosyasında USE_FULL_SCREEN_INTENT öğesini tanımlayın.
  2. FSI'yi etkinleştirmek veya devre dışı bırakmak için ayarları yönetmek üzere ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT simgesini kullanın.
  3. Test telefonunuzda, tam ekran bildirimler için kullanıcı iznini Şekil 1'de gösterildiği gibi manuel olarak açın veya kapatın.
  4. FSI bildirimi gönder.
  5. Aşağıdaki FSI izni ve görüntüleme modu kombinasyonları için tam ekran bildirimin görünümünü doğrulayın:
FSI izni Kilitli ekran Kilitli ekran Ekran kapalıyken Her zaman açık ekran (AOD)
Kullanıcı tarafından izin verildi Hap düğmeleri içeren kalıcı uyarı bildirimi (HUN) FSI'yı başlat FSI'yı başlat FSI'yi başlatma
Kullanıcı tarafından reddedildi 60 saniye boyunca hap düğmeleriyle HUN Hap düğmeleriyle HUN, 60 saniye boyunca listede ilk sırada görünüyor AOD açılır, 60 saniye boyunca hap düğmeleriyle HUN gösterir 60 saniye boyunca hap düğmeleriyle HUN