Изменения в системе совместимости (Android 15)

Рисунок 1. На экране «Изменения совместимости приложений» в параметрах разработчика перечислены изменения, которые можно включить.

На этой странице описаны отключаемые изменения, являющиеся частью фреймворка совместимости в Android 15 (уровень API 35). Используйте этот список вместе с параметрами разработчика и командами ADB для тестирования и отладки вашего приложения при подготовке к поддержке и переходу на Android 15.

Вот некоторые из действий, которые можно выполнить с помощью инструментов фреймворка совместимости:

  • Тестируйте целевые изменения, не изменяя targetSdkVersion приложения . Вы можете использовать переключатели для принудительного включения определённых целевых изменений поведения, чтобы оценить их влияние на ваше текущее приложение.
  • Сосредоточьте тестирование только на конкретных изменениях . Вместо того, чтобы обрабатывать все целевые изменения сразу, переключатели позволяют отключить все целевые изменения, кроме тех, которые вы хотите протестировать.
  • Управление переключателями через adb . Вы можете использовать команды adb для включения и отключения переключаемых изменений в автоматизированной тестовой среде.
  • Ускоряйте отладку, используя стандартные идентификаторы изменений . Каждое из переключаемых изменений имеет уникальный идентификатор и имя, которые можно использовать для быстрого поиска первопричины в журнале.

Полную информацию об использовании инструментов для каждого из этих вариантов использования см. в разделе Инструменты фреймворка совместимости .

Изменения поведения, включенные в структуру совместимости

Список в этом разделе описывает переключаемые изменения, которые включены в структуру совместимости для изменений, связанных с Android 15, а также переключаемые изменения, которые могут помочь при общем тестировании приложений.

Вы можете отфильтровать список изменений по их состоянию по умолчанию .

Переключаемые изменения в структуре совместимости в Android 15

CAMERA_MIC_INDICATORS_NOT_PRESENT

Идентификатор изменения: 162547999
Состояние по умолчанию : отключено для всех приложений.

Указывает, что это устройство поддерживает индикаторы камеры и микрофона. Значение false , если оно присутствует, поскольку метод CompatChanges#isChangeEnabled возвращает true если идентификатор изменения отсутствует.

CHECK_PARAMS_IN_IS_SESSION_CONFIGURATION_SUPPORTED

Идентификатор изменения: 320741775
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

Если этот параметр включен, isSessionConfigurationSupported также проверяет совместимость параметров сеанса, если она поддерживается HAL.

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_CREATOR

Идентификатор изменения: 296478951
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

Если эта опция включена, создатель PendingIntent по умолчанию блокирует запуск фоновых активностей .

Более подробную информацию об этом изменении см. в разделе на странице изменений поведения Android 15 о безопасных запусках фоновой активности .

DEPRECATE_UI_FONT

Изменить ID: 279646685
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении атрибут elegantTextHeight TextView становится true по умолчанию, когда ваше приложение работает на устройстве с Android 15 или выше, заменяя компактный шрифт, используемый по умолчанию в некоторых сценариях с большими вертикальными метриками, на гораздо более удобочитаемый.

Дополнительную информацию об этом изменении см. в разделе на странице изменений поведения Android 15 о значении атрибута elegantTextHeight по умолчанию — true .

DOWNSCALED

Идентификатор изменения: 168419799
Состояние по умолчанию : отключено для всех приложений.

Это изменение является гарантией всех изменений в уменьшении размера буфера для каждого приложения. Включение этого изменения позволяет применять следующие коэффициенты масштабирования:

При включении этого изменения для пакета приложения размер приложения принудительно изменяется до максимального разрешенного коэффициента масштабирования. Например, если включены оба значения (80% и 70% ( DOWNSCALE_80 и DOWNSCALE_70 )), используется значение 80%. Если включены и это изменение, и DOWNSCALED_INVERSE , приоритет имеет DOWNSCALED_INVERSE , а коэффициент масштабирования применяется обратно пропорционально.

DOWNSCALED_INVERSE

Изменить ID: 273564678
Состояние по умолчанию : отключено для всех приложений.

Это изменение является гарантией всех изменений обратного уменьшения масштаба буфера для каждого приложения. Включение этого изменения позволяет применять следующие коэффициенты масштабирования в обратном порядке (то есть вместо этого увеличивать разрешение):

При включении этого изменения для пакета приложения размер приложения принудительно изменяется до минимально допустимого коэффициента масштабирования. Например, если включены оба коэффициента ( DOWNSCALE_80 и DOWNSCALE_70 ), используется 80%, поскольку при обратном применении коэффициент масштабирования 80% равен 125%, что меньше, чем 142,86%, которые применяются при обратном применении коэффициента масштабирования 70%. Если включены и это изменение, и DOWNSCALED , приоритет имеет DOWNSCALED_INVERSE , и коэффициент масштабирования применяется обратно.

DOWNSCALE_30

Изменить ID: 189970040
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 30% от реального дисплея. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 333,33% от реального дисплея.

DOWNSCALE_35

Изменить ID: 189969749
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 35% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 285,71% от реального разрешения.

DOWNSCALE_40

Идентификатор изменения: 189970038
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 40% от реального дисплея. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 250% от реального дисплея.

DOWNSCALE_45

Изменить ID: 189969782
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 45% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 222,22% от реального разрешения.

DOWNSCALE_50

Идентификатор изменения: 176926741
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с 50% от вертикального и горизонтального разрешения реального дисплея. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с 200% от вертикального и горизонтального разрешения реального дисплея.

DOWNSCALE_55

Изменить ID: 189970036
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 55% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 181,82% от реального разрешения.

DOWNSCALE_60

Идентификатор изменения: 176926771
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 60% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 166,67% от реального разрешения.

DOWNSCALE_65

Изменить ID: 189969744
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 65% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 153,85% от реального разрешения.

DOWNSCALE_70

Идентификатор изменения: 176926829
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 70% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 142,86% от реального разрешения.

DOWNSCALE_75

Изменить ID: 189969779
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 75% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 133,33% от реального разрешения.

DOWNSCALE_80

Идентификатор изменения: 176926753
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 80% от реального дисплея. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 125% от реального дисплея.

DOWNSCALE_85

Изменить ID: 189969734
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 85% от реального разрешения. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением по вертикали и горизонтали, составляющим 117,65% от реального разрешения.

DOWNSCALE_90

Изменить ID: 182811243
Состояние по умолчанию : отключено для всех приложений.

Если также включен DOWNSCALED , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением 90% от реального экрана по вертикали и горизонтали. Если также включен DOWNSCALED_INVERSE , включение этого изменения для пакета заставит приложение предполагать, что оно работает на дисплее с разрешением 111,11% от реального экрана по вертикали и горизонтали.

DO_NOT_CLONE_IN_ARRAYS_AS_LIST

Идентификатор изменения: 202956589
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении этой опции, при использовании Arrays.asList(...).toArray() , тип компонента результирующего массива теперь будет Object , а не типом элементов базового массива. Поэтому следующий код выдаёт исключение ClassCastException :

String[] elements = (String[]) Arrays.asList("one", "two").toArray();

В этом случае, чтобы сохранить String как тип компонента в результирующем массиве, можно вместо этого использовать Collection.toArray(Object[]) :

String[] elements = Arrays.asList("two", "one").toArray(new String[0]);

Более подробную информацию об этом изменении можно найти в разделе на странице изменений поведения Android 15 об изменениях API OpenJDK .

ENABLE_BUNDLE_LAUNCH_ACTIVITY_ITEM

Идентификатор изменения: 324203798
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

Если этот параметр включен, чтобы предотвратить возникновение проблем совместимости существующих приложений с использованием ClientTransaction#getActivityToken() не из SDK, разрешите только объединение LaunchActivityItem .

ENABLE_MATCH_LOCAL_NETWORK

Изменить идентификатор: 319212206
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении этой функции приложения по умолчанию получают сетевые обратные вызовы из локальных сетей. Приложениям для Android 14 (уровень API 34) и ниже по-прежнему необходимо добавить NetworkCapabilities.NET_CAPABILITY_LOCAL_NETWORK в NetworkCapabilities метода NetworkRequest для получения ConnectivityManager.NetworkCallback из локальных сетей.

ENABLE_STRICT_FORMATTER_VALIDATION

Идентификатор изменения: 270674727
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении проверка индекса аргумента, флагов, ширины и точности теперь становится более строгой при использовании API String.format() и Formatter.format() .

Более подробную информацию об этом изменении можно найти в разделе на странице изменений поведения Android 15 об изменениях API OpenJDK .

ENFORCE_EDGE_TO_EDGE

Идентификатор изменения: 309578419
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

Если эта функция включена, приложения по умолчанию будут отображаться на всех экранах устройств под управлением Android 15 и выше.

Дополнительную информацию об этом изменении см. в разделе на странице изменений поведения Android 15, посвященном обеспечению безопасности на всех устройствах .

ENFORCE_STRICT_QUERY_BUILDER

Изменить ID: 143231523
Состояние по умолчанию : отключено для всех приложений.

При включении SQLiteQueryBuilder проверяет все выборки запросов CalendarProvider2 на наличие вредоносных аргументов.

FGS_BOOT_COMPLETED_RESTRICTIONS

Идентификатор изменения: 296558535
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

Если включено, отключает фоновые запуски службы переднего плана с широковещательных сообщений BOOT_COMPLETED для всех типов, кроме:

Дополнительную информацию об этом изменении см. в разделе на странице изменений поведения Android 15 об ограничениях на запуск приоритетных служб широковещательными приемниками BOOT_COMPLETED .

FGS_INTRODUCE_TIME_LIMITS

Изменить идентификатор: 317799821
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении приоритетные службы некоторых типов имеют ограничение по времени. Если приоритетная служба проблемного типа не будет остановлена в течение выделенного времени, она получит обратный вызов с помощью Service.onTimeout(int, int) , и её необходимо будет остановить в течение нескольких секунд. Если приложение не выполнит это требование, ему будет объявлена ошибка ANR.

Дополнительную информацию об этом изменении см. в разделах на странице изменений поведения Android 15, посвященных поведению тайм-аута для приоритетных типов служб синхронизации данных и обработки мультимедиа .

FGS_SAW_RESTRICTIONS

Изменить идентификатор: 319471980
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

Если включено, отключается запуск фоновой службы переднего плана в окне системного оповещения для всех типов, если только у нее еще нет окна системного наложения.

Дополнительную информацию об этом изменении см. в разделе на странице изменений поведения Android 15 об ограничениях на запуск служб переднего плана, пока приложение имеет разрешение SYSTEM_ALERT_WINDOW .

FORCE_DISABLE_HEVC_SUPPORT

Идентификатор изменения: 174227820
Состояние по умолчанию : отключено для всех приложений.

Принудительно отключите поддержку HEVC в приложении. Приложения должны указывать поддерживаемые возможности HEVC в манифесте, но этот флаг можно использовать, чтобы заставить приложение не поддерживать HEVC, тем самым принудительно перекодируя медиаданные, закодированные в HEVC. Установка этого флага переопределяет любые значения по умолчанию на уровне ОС для приложений. По умолчанию он отключен, то есть приоритет имеют значения по умолчанию ОС. Если включены и этот флаг, и FORCE_ENABLE_HEVC_SUPPORT , ОС игнорирует оба флага.

FORCE_ENABLE_HEVC_SUPPORT

Изменить ID: 174228127
Состояние по умолчанию : отключено для всех приложений.

Принудительно включить поддержку HEVC в приложении. Приложения должны декларировать поддерживаемые возможности HEVC в манифесте, но этот флаг можно использовать, чтобы принудительно включить поддержку HEVC в приложении, тем самым избегая перекодирования при доступе к медиаконтенту, закодированному в HEVC. Установка этого флага переопределяет любые значения по умолчанию на уровне ОС для приложений. По умолчанию он отключен, то есть приоритет имеют значения по умолчанию ОС. Если включены и этот флаг, и FORCE_DISABLE_HEVC_SUPPORT , ОС игнорирует оба флага.

FORCE_NON_RESIZE_APP

Идентификатор изменения: 181146395
Состояние по умолчанию : отключено для всех приложений.

Принудительно делает пакеты, к которым применяется, неизменяемыми по размеру.

FORCE_RESIZE_APP

Идентификатор изменения: 174042936
Состояние по умолчанию : отключено для всех приложений.

Принудительно делает пакеты, к которым применяется, изменяемыми по размеру. Мы допускаем изменение размера только в полноэкранном оконном режиме, но не принудительно переводим приложение в многооконный режим с возможностью изменения размера.

GWP_ASAN

Идентификатор изменения: 145634846
Состояние по умолчанию : отключено для всех приложений.

Позволяет обнаруживать ошибки выборочной памяти в приложениях.

Более подробную информацию об использовании GWP-ASan см. в руководстве GWP-ASan .

IS_DEVICE_OWNER_USER_AWARE

Идентификатор изменения: 307233716
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении метод isDeviceOwnerApp(String) будет использовать имя пользователя, указанного в контексте. Для приложений, предназначенных для Android 14 (уровень API 34) или ниже, будет использоваться имя пользователя вызывающего процесса ( Process.myUserHandle() ).

MANAGE_GLOBAL_ZEN_VIA_IMPLICIT_RULES

Идентификатор изменения: 308670109
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении этой функции приложения больше не смогут изменять глобальное состояние или политику режима «Не беспокоить» (DND) на устройстве (ни изменяя пользовательские настройки, ни отключая его). Вместо этого приложения должны добавить правило AutomaticZenRule , которое система объединяет в глобальную политику с существующей схемой «Побеждает наиболее строгая политика».

Дополнительную информацию об этом изменении см. в разделе на странице изменений поведения Android 15 об изменениях в том, когда приложения могут изменять глобальное состояние режима «Не беспокоить» .

NATIVE_HEAP_ZERO_INIT

Изменить ID: 178038272
Состояние по умолчанию : отключено для всех приложений.

Включить автоматическую нулевую инициализацию выделенной памяти кучи.

NATIVE_MEMTAG_ASYNC

Идентификатор изменения: 145772972
Состояние по умолчанию : отключено для всех приложений.

Включить асинхронную (ASYNC) проверку тегов памяти в этом процессе. Этот флаг влияет только на оборудование, поддерживающее расширение тегирования памяти ARM (MTE).

NATIVE_MEMTAG_SYNC

Изменить ID: 177438394
Состояние по умолчанию : отключено для всех приложений.

Включает синхронную (SYNC) проверку тегов памяти в этом процессе. Этот флаг влияет только на оборудование, поддерживающее расширение тегирования памяти ARM (MTE). Если включены и NATIVE_MEMTAG_ASYNC , и этот параметр, приоритет имеет этот параметр, и MTE включается в режиме SYNC.

OVERRIDE_ANY_ORIENTATION

Изменить ID: 265464455
Состояние по умолчанию : отключено для всех приложений.

При включении это изменение позволяет применять следующие переопределения ориентации независимо от ориентации, запрошенной действием:

OVERRIDE_ANY_ORIENTATION_TO_USER

Идентификатор изменения: 310816437
Состояние по умолчанию : отключено для всех приложений.

При включении активирует SCREEN_ORIENTATION_USER , который переопределяет любую ориентацию, запрошенную действием. Приложения с фиксированной ориентацией можно переопределить на полноэкранный режим на устройствах с большим экраном, включив ignoreOrientationRequest с помощью этого переопределения.

OVERRIDE_CAMERA_COMPAT_DISABLE_FREEFORM_WINDOWING_TREATMENT

Изменить идентификатор: 314961188
Состояние по умолчанию : отключено для всех приложений.

Если этот параметр включен, он исключает пакеты, к которым применяется переопределение, из обработки совместимости камеры в режиме свободного оконного управления для приложений с фиксированной ориентацией.

В режиме свободного оконного управления обработка совместимости эмулирует работу на портретном устройстве, разворачивая окно приложения в почтовый ящик и изменяя характеристики камеры на те, которые приложения обычно ожидают от портретного устройства: поворот сенсора на 90 и 270 градусов для задней и передней камер соответственно, а также устанавливая поворот дисплея на 0.

Используйте этот флаг, чтобы отключить обработку совместимости для приложений, которые плохо реагируют на обработку.

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

Изменить ID: 191514214
Состояние по умолчанию : отключено для всех приложений.

При включении этого изменения применяемые пакеты игнорируют текущее значение android:resizeableActivity , а также целевой SDK Android 6.0 или ниже (уровень API 23) и считают активность неизменяемой. В этом случае значение поворота камеры и кадрирования зависит только от необходимой компенсации с учётом текущего поворота экрана.

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

Идентификатор изменения: 189229956
Состояние по умолчанию : отключено для всех приложений.

При включении этого изменения пакеты, к которым оно применяется, переопределяют поведение поворота и обрезки камеры по умолчанию и всегда возвращают CaptureRequest.SCALER_ROTATE_AND_CROP_NONE .

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

Изменить идентификатор: 316897322
Состояние по умолчанию : отключено для всех приложений.

Если этот параметр включен, пользователям предоставляется возможность выбора между захватом одного приложения или всего экрана при запуске сеанса MediaProjection , что переопределяет использование MediaProjectionConfig#createConfigForDefaultDisplay .

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

Идентификатор изменения: 266124927
Состояние по умолчанию : отключено для всех приложений.

Включает SCREEN_ORIENTATION_REVERSE_LANDSCAPE для приложения, к которому он применяется. Если также не включено OVERRIDE_ANY_ORIENTATION , SCREEN_ORIENTATION_REVERSE_LANDSCAPE используется только тогда, когда действие указывает альбомную ориентацию. Включение этого изменения поможет вам протестировать поведение приложения на предмет различий между устройствами, где альбомная ориентация соответствует Surface.ROTATION_90 , и устройствами, где она соответствует Surface.ROTATION_270 .

OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE

Изменить ID: 332679525
Состояние по умолчанию : отключено для всех приложений.

При включении переопределяет поведение макета в режиме вырезания экрана. Применяется только в том случае, если не задано принудительное отображение от края до края.

OVERRIDE_MIN_ASPECT_RATIO

Идентификатор изменения: 174042980
Состояние по умолчанию : отключено для всех приложений.

Это изменение является контролёром всех изменений, устанавливающих заданное минимальное соотношение сторон. Включение этого изменения позволяет применять следующие минимальные соотношения сторон:

Если это изменение включено для пакета приложения, минимальное соотношение сторон, указанное в манифесте приложения, переопределяется наибольшим разрешенным соотношением сторон, если только значение манифеста приложения не выше.

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

Идентификатор изменения: 218959984
Состояние по умолчанию : отключено для всех приложений.

Если этот параметр включен, он отменяет ограничение минимального соотношения сторон в портретном полноэкранном режиме, чтобы использовать все доступное пространство экрана.

OVERRIDE_MIN_ASPECT_RATIO_LARGE

Идентификатор изменения: 180326787
Состояние по умолчанию : отключено для всех приложений.

Если также включено OVERRIDE_MIN_ASPECT_RATIO , включение этого изменения для пакета устанавливает минимальное соотношение сторон действия на большое значение, как определено OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE .

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

Идентификатор изменения: 180326845
Состояние по умолчанию : отключено для всех приложений.

Если также включено OVERRIDE_MIN_ASPECT_RATIO , включение этого изменения для пакета устанавливает минимальное соотношение сторон действия к среднему значению, определенному OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE .

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

Изменить ID: 325586858
Состояние по умолчанию : отключено для всех приложений.

Если этот параметр включен, он ограничивает обработку, принудительно устанавливающую заданное минимальное соотношение сторон, так что она применяется только в том случае, если приложение подключено к камере.

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

Идентификатор изменения: 203647190
Состояние по умолчанию : включено для всех приложений.

Если также включено OVERRIDE_MIN_ASPECT_RATIO , это изменение ограничивает любые другие изменения, которые принудительно устанавливают минимальное соотношение сторон действия определенным значением, — например, OVERRIDE_MIN_ASPECT_RATIO_LARGE и OVERRIDE_MIN_ASPECT_RATIO_MEDIUM — для действий, которые также имеют портретную ориентацию.

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

Идентификатор изменения: 236283604
Состояние по умолчанию : отключено для всех приложений.

При включении это изменение исключает пакеты, к которым применяется игнорирование ограничений ориентации, которые могут устанавливать производители устройств.

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

Идентификатор изменения: 265451093
Состояние по умолчанию : отключено для всех приложений.

Включает SCREEN_ORIENTATION_NOSENSOR для приложения, к которому он применяется. Если также не включено OVERRIDE_ANY_ORIENTATION , SCREEN_ORIENTATION_NOSENSOR используется только тогда, когда действие не указывает другую фиксированную ориентацию.

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

Изменить ID: 265452344
Состояние по умолчанию : отключено для всех приложений.

Включает SCREEN_ORIENTATION_PORTRAIT для приложения, к которому он применяется. Если также не включено OVERRIDE_ANY_ORIENTATION , SCREEN_ORIENTATION_PORTRAIT используется только тогда, когда в действии не указана другая фиксированная ориентация.

PARSE_CONTENT_DISPOSITION_USING_RFC_6266

Изменить идентификатор: 319400769
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

Если этот параметр включен, он позволяет анализировать заголовки Content-Disposition, соответствующие RFC 6266. В частности, это позволяет анализировать значения filename* , которые могут использовать другую кодировку символов.

RATE_LIMIT_TOASTS

Изменить ID: 174840628
Состояние по умолчанию : это изменение невозможно изменить. Оно регистрируется только фреймворком совместимости.

Включает ограничение количества вызовов Toast.show() , чтобы не перегружать пользователя слишком большим количеством уведомлений за ограниченное время. Любая попытка показать больше уведомлений, чем разрешено, за определённый период времени приводит к удалению уведомления.

STREAM_INT_DIFFERS_FROM_NEXT_INT

Идентификатор изменения: 308103782
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении методы Random.ints() теперь возвращают последовательность чисел, отличную от последовательности, возвращаемой методами Random.nextInt() . Это следует из изменений в https://bugs.openjdk.org/browse/JDK-8301574 .

Более подробную информацию об этом изменении можно найти в разделе на странице изменений поведения Android 15 об изменениях API OpenJDK .

USE_EXPERIMENTAL_COMPONENT_ALIAS

Изменить ID: 196254758
Состояние по умолчанию : отключено для всех приложений.

Если эта опция включена, система разрешает пакету «android» использовать псевдонимы компонентов.

USE_NEW_ISO_LOCALE_CODES

Идентификатор изменения: 291868760
Состояние по умолчанию : включено для приложений, предназначенных для Android 15 (уровень API 35) или выше.

При включении этой функции языковые коды иврита, идиша и индонезийского языка больше не преобразуются в устаревшие формы (иврит: iw , идиш: ji и индонезийский: in ).

Более подробную информацию об этом изменении можно найти в разделе на странице изменений поведения Android 15 об изменениях API OpenJDK .