В Android 14 и выше, во избежание рекламного спама и фишинга учетных данных, разрешение USE_FULL_SCREEN_INTENT по умолчанию для отправки полноэкранных уведомлений может быть предоставлено только приложениям, которые предоставляют функции звонков и будильника.
Для всех приложений, устанавливаемых на Android 14, разрешение USE_FULL_SCREEN_INTENT включено по умолчанию. После установки Google Play Store отзывает разрешение на использование полноэкранного режима (FSI) для приложений, не имеющих функций звонков или будильника.
Для приложений, установленных на телефонах под управлением Android 13 или более ранних версий, разрешение USE_FULL_SCREEN_INTENT остается включенным по умолчанию.
Разрешение пользователя
В Android 14 приложения могут использовать NotificationManager#canUseFullScreenIntent() для проверки возможности отправки полноэкранных уведомлений. Чтобы получить разрешение пользователя на отправку полноэкранных уведомлений, приложения используют ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENT для запуска настройки управления полноэкранными интентами, как показано на рисунке 1:

Рисунок 1. Пользовательский интерфейс для включения отправки полноэкранных интентов приложениями.
Параметр «Управление полноэкранными интентами» находится в меню «Настройки» в разделе «Специальный доступ к приложению» . С помощью этого интерфейса пользователи могут при необходимости отозвать это разрешение.
требования OEM
В Android 14 разрешения FSI для приложений включены по умолчанию. Производители оборудования должны указывать, какие приложения соответствуют требованиям для получения разрешений FSI. Производители оборудования должны обеспечить, чтобы сторонние магазины приложений устанавливали начальные состояния предоставления разрешений FSI для своих приложений с помощью PackageInstaller.SessionParams , в частности, с параметрами PERMISSION_STATE_DEFAULT , PERMISSION_STATE_DENIED и PERMISSION_STATE_GRANTED .
Проверка
Для проверки ограничений FSI используйте тест CTS Verifier в файле NotificationFullScreenIntentVerifierActivity.java и тест CTS в NotificationManagerTest.java .
Ручные тесты
Выполните следующие шаги, чтобы вручную проверить пределы FSI в вашем приложении:
- Укажите параметр
USE_FULL_SCREEN_INTENTв файлеAndroidManifest.xmlвашего приложения. - Используйте
ACTION_MANAGE_APP_USE_FULL_SCREEN_INTENTдля управления настройками включения или выключения FSI. - На тестовом телефоне вручную измените разрешение пользователя на отображение уведомлений в полноэкранном режиме, как показано на рисунке 1.
- Отправить уведомление FSI.
- Проверьте корректность отображения полноэкранного уведомления для следующих комбинаций разрешений FSI и режимов отображения:
| разрешение FSI | Разблокированный экран | Заблокированный экран | За кадром | Постоянно включенный дисплей (AOD) |
| Предоставлено пользователем | Постоянное оповещение (HUN) с помощью кнопок-таблеток | Запуск FSI | Запуск FSI | Запуск FSI |
| Отказано пользователем | HUN с пуговицами-таблетками для 60-х | В списке товаров 60-х годов на первом месте стоит HUN с пуговицами в виде таблеток. | Включается функция AOD, отображается надпись HUN с кнопками в виде таблеток, символизирующих 60-е годы. | HUN с пуговицами-таблетками для 60-х |