Совместимость приложений на Android

В контексте Android термин «совместимость приложения» означает, что ваше приложение корректно работает на определенной версии платформы, как правило, на последней версии. С каждым релизом мы вносим существенные изменения, улучшающие конфиденциальность и безопасность, а также внедряем изменения, которые улучшают общий пользовательский опыт в рамках ОС. Иногда эти изменения могут повлиять на ваши приложения, поэтому важно ознакомиться с изменениями в поведении, включенными в каждую выпущенную версию, протестировать их и опубликовать обновления совместимости для ваших пользователей.

Почему важна совместимость приложений

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

Типы изменений в поведении платформы

При работе на новой версии платформы ваше приложение может быть затронуто двумя различными типами изменений:

Изменения для всех приложений

Эти изменения затрагивают все приложения, работающие на данной версии Android, независимо от targetSdkVersion приложения.

Вам следует заблаговременно проверить совместимость вашего приложения с этими изменениями во время предварительных и бета-версий каждой новой версии Android. Обновления для Pixel и других устройств начинаются сразу после выхода финальной версии Android в Android Open Source Project (AOSP) , поэтому, заблаговременное тестирование на наличие этих изменений поможет обеспечить беспрепятственный переход пользователей на последнюю версию Android на этих устройствах.

Целенаправленные изменения

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

Для внесения этих изменений следует провести тестирование на совместимость, готовясь к использованию последней стабильной версии API , а именно Android 16 (уровень API 36). Даже если вы не планируете сразу же переходить на новую версию Android, внесение этих изменений может потребовать значительного объема разработки. О таких изменениях следует узнавать как можно раньше — в идеале, во время предварительных и бета-версий каждой новой версии Android — чтобы провести предварительное тестирование и предоставить обратную связь.

Инструменты для создания фреймворков совместимости

Чтобы помочь вам проверить совместимость, мы включаем в каждый релиз как можно больше критических изменений в рамках системы совместимости. Включение изменений в систему совместимости делает их переключаемыми, позволяя принудительно включать или отключать изменения по отдельности через параметры разработчика или ADB. При использовании системы совместимости вам не нужно изменять targetSdkVersion вашего приложения или перекомпилировать его для базового тестирования.

Для получения дополнительной информации см. раздел «Тестирование и отладка изменений в поведении платформы в вашем приложении» .

Ограничения на интерфейсы, не относящиеся к SDK.

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

Выпуски платформы

Узнайте больше о последних версиях Android: