Перенос приложений на Android 15

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

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

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

Типичная миграция состоит из двух этапов, которые могут происходить одновременно:

  • Обеспечение совместимости приложения (к финальной версии Android 15)
  • Внедрение новых функций платформы и API (как можно скорее после финального релиза) будет направлено на их реализацию.

Обеспечьте совместимость с Android 15.

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

Обычно вы можете внести изменения в приложение и опубликовать обновление, не меняя параметр targetSdkVersion . Аналогично, вам не потребуется использовать новые API или менять compileSdkVersion , хотя это может зависеть от способа сборки вашего приложения и используемой им функциональности платформы.

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

Скачать Android 15

Установите на устройство образ системы Android 15 или загрузите образ системы для эмулятора Android.

Просмотреть изменения

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

Тест

Установите приложение на своё устройство или эмулятор и запустите тесты. Сосредоточьтесь на изменениях в поведении системы и проработайте все сценарии работы приложения.

Обновлять

Вносите только необходимые изменения в код для адаптации к изменениям в поведении или устранения проблем. Перекомпилируйте приложение с тем же уровнем API, на который оно изначально было ориентировано — нет необходимости ориентироваться на Android 15.

Публиковать

Подпишите, загрузите и опубликуйте обновленный пакет Android-приложений (App Bundle) или APK-файл.

Проведите тестирование на совместимость.

В большинстве случаев тестирование совместимости с Android 15 аналогично обычному тестированию приложений. Сейчас самое время пересмотреть основные рекомендации по обеспечению качества приложений и лучшие практики тестирования .

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

Также обязательно проверьте и протестируйте использование ограниченных интерфейсов, не относящихся к SDK . Вам следует заменить любой ограниченный интерфейс, используемый вашим приложением, на эквивалент из общедоступного SDK или NDK. Следите за предупреждениями в logcat, которые указывают на такие обращения, и используйте метод StrictMode detectNonSdkApiUsage() для их программного обнаружения.

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

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

Обновите параметры таргетинга приложения и разработайте его с использованием новых API.

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

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

Следующие шаги описывают, как обеспечить полную поддержку Android 15.

Получите Android 15 SDK

Установите последнюю предварительную версию Android Studio для сборки под Android 15. Убедитесь, что у вас есть устройство или эмулятор с Android 15.
Обновите параметр targetSdkVersion и другие параметры сборки.

Проанализируйте изменения в поведении.

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

Проверка на соответствие новым изменениям в политике конфиденциальности.

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

Внедрить функции Android 15

Воспользуйтесь преимуществами API Android 15, чтобы добавить новые функции и возможности в ваши приложения. Перекомпилируйте под Android 15.

Тест

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

Последнее обновление

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

Публиковать

Подпишите, загрузите и опубликуйте обновленный пакет Android-приложений (App Bundle) или APK-файл.

Получите SDK, измените целевую платформу, создавайте приложения с использованием новых API.

Для начала тестирования полной поддержки Android 15 используйте последнюю предварительную версию Android Studio, чтобы загрузить SDK Android 15 и любые другие необходимые инструменты. Затем обновите targetSdkVersion и compileSdkVersion вашего приложения и перекомпилируйте приложение. Подробности см. в руководстве по настройке SDK .

Протестируйте свое приложение для Android 15.

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

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

Обязательно проверьте и протестируйте использование ограниченных интерфейсов, не относящихся к SDK , которые могут применяться. Следите за предупреждениями в logcat, которые указывают на такие обращения, и используйте метод StrictMode detectNonSdkApiUsage() для их программного обнаружения.

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

Проверка с использованием переключателей совместимости приложений.

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

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

При подготовке к изменению целевой платформы вашего приложения или во время активной разработки с поддержкой Android 15 эти переключатели могут оказаться полезными. Для получения дополнительной информации см. раздел «Изменения в структуре совместимости (Android 15)» .