Поддержка операционных систем и программного обеспечения платформой Google Карт

Правила поддержки версий мобильных операционных систем

Мобильные операционные системы постоянно развиваются, а мы регулярно выпускаем обновления платформы Google Карт и добавляем в нее новые функции. Поэтому мы планируем периодически замораживать поддержку прежних версий мобильных ОС и изменять требования к версии ОС согласно определенному графику. Это необходимо по нескольким причинам:

  • Заморозка поддержки операционных систем по заранее известному графику поможет разработчикам планировать обновление приложений. Кроме того, разработчики будут четко знать, как долго и на каких устройствах будут поддерживаться старые версии их приложений.
  • Заморозка поддержки версий SDK платформы Google Карт (то есть их привязка к определенным версиям Android и iOS) позволяет компании Google контролировать необходимый объем тестирования SDK.

В этом разделе описываются правила поддержки мобильных ОС платформой Google Карт и приводятся графики заморозки версий. Эти правила распространяются только на общедоступные продукты.

Терминология

Правила поддержки версий Android

Каждая основная версия Android (т. е. каждый уровень API, например 29 или 30) будет поддерживаться новыми версиями SDK платформы Google Карт в течение шести лет после своего выхода.

Так, версию Android, выпущенную в 2020 году, будут поддерживать версии Places SDK, выпущенные до 2026 года. И наоборот: при выходе новой версии Android в 2020 году платформа Google Карт будет поддерживать прежние версии ОС, выпущенные в 2014 году и позже. Этот обратный по времени пример поможет лучше понять правило, описанное ниже.

В третьем квартале каждого года происходит следующее:

  • Google замораживает поддержку версии Android, выпущенной шесть лет назад, и последующие версии SDK требуют версию Android, номер которой на единицу выше.

    Например, в третьем квартале 2022 года, примерно во время выхода новой версии Android, Google заморозит поддержку Android версии 7, выпущенной в 2016 году, и новые версии SDK платформы Google Карт будут требовать версию Android не ниже 8. Версия SDK, выпущенная непосредственно до этого события, станет последней из тех, которые поддерживают Android 7.

  • Таким образом, разработчикам приложений нужно будет решать, увеличить ли минимальную поддерживаемую версию ОС (и, как следствие, указать более высокие требуемые версии зависимостей).

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

Единственное исключение, на которое не распространяется график заморозки версий ОС, – это Maps SDK для Android, так как он предоставляется в составе сервисов Google Play.

Maps SDK для Android

Настоящие правила поддержки версий ОС не распространяются на Maps SDK для Android. Среда выполнения Maps SDK для Android предоставляется в составе сервисов Google Play (также известных как сервисы Google для мобильных устройств или GMS Core), которые необходимы для запуска приложений Google на устройствах Android. Поскольку сервисы Google Play имеют собственный график поддержки уровней API Android (см. это объявление), график поддержки Maps SDK для Android зависит от поддержки версий ОС сервисами Google Play. О том, с какими версиями API Android могут работать сервисы Google Play, рассказывается в статье о настройке сервисов Google Play.

Однако для клиентской библиотеки Maps SDK для Android (фасад API), работающей со средой выполнения Google Карт в сервисах Google Play, выпуск версий и поддержка привязаны к уровням API Android. Разработчики, создающие приложения с использованием Maps SDK для Android, задают версию клиентской библиотеки в качестве зависимости.

Google рекомендует использовать последнюю версию клиентской библиотеки com.google.android.gms.play-services-maps, чтобы в вашем приложении были доступны все новейшие функции платформы Google Карт, когда оно выполняется на устройствах с последней версией сервисов Google Play.

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

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

Правила поддержки версий iOS

Каждая основная версия iOS будет поддерживаться новыми версиями SDK платформы Google Карт в течение как минимум трех лет после своего выхода.

Например, если версия iOS выпущена осенью 2020 года, то платформа Google Карт будет поддерживать ее до весны 2023 года.

Во втором квартале каждого года происходит следующее:

  • Google замораживает поддержку версии iOS, выпущенной более трех лет назад, и минимальной поддерживаемой становится версия iOS, номер которой на единицу выше.

    Например, во втором квартале 2022 года Google заморозит поддержку iOS 12, выпущенной в сентябре 2018 года. iOS 13 станет минимальной поддерживаемой для новых версий SDK платформы Google Карт. Версия SDK, выпущенная непосредственно до этого события, станет последней из тех, которые поддерживают iOS 12.

  • Таким образом, разработчикам приложений нужно будет решать, увеличить ли минимальную поддерживаемую версию ОС (и, как следствие, указать более высокие требуемые версии зависимостей).

    Рассмотрим ситуацию, описанную в примере выше. Версии приложений, основанные на более старых версиях SDK, будут и далее работать на устройствах с iOS 12. Тогда как версии приложений, основанные на версиях SDK, выпущенных после iOS 12, уже не будут работать на устройствах с iOS 12. Когда среди зависимостей приложения появится новая версия SDK, пользователям придется обновить свои устройства до iOS версии 13 или более поздней, чтобы запускать новые версии приложения.

Поддержка SDK

Когда Google выпускает новую версию мобильного SDK платформы Google Карт, происходит следующее:

  • Google тестирует эту версию SDK на версиях ОС вплоть до той, которая указана как минимальная поддерживаемая.
  • Google выпускает исправления для SDK в течение шести месяцев.
  • Google устраняет проблемы с обратной совместимостью в течение 12 месяцев.
  • Через 12 месяцев Google исправляет ошибки уже в следующей версии SDK.

Серверный код платформы Google Карт поддерживает каждую версию SDK до тех пор, пока эта версия не будет выведена из эксплуатации.

Поддержка интегрированных сред разработки

SDK платформы Google Карт для iOS совместимы с приложениями для iOS, которые создаются в интегрированной среде разработки Xcode от Apple. В разных версиях Xcode используются разные версии языка программирования Swift, а также SDK для разных версий операционных систем Apple.

Google периодически увеличивает минимальный номер версии Xcode, поддерживаемой основными выпусками SDK платформы Google Карт для iOS. Чтобы узнать, какова минимальная поддерживаемая версия Xcode для версии SDK, которую вы хотите использовать в приложении, ознакомьтесь с примечаниями к выпуску, а также с темами о поддерживаемом ПО.

Поддержка браузеров

Maps JavaScript API и Maps Embed API поддерживают следующие веб-браузеры:

Компьютер
  • Текущая версия Microsoft Edge (Windows).
  • Текущая и предыдущая версии Firefox (Windows, macOS, Linux).
  • Текущая и предыдущая версии Chrome (Windows, macOS, Linux).
  • Текущая и предыдущая версии Safari (macOS).

С августа 2021 года пользователи Internet Explorer версии 11 увидят предупреждение в верхней части окна карты. Версия 3.47 – это последняя версия Maps JavaScript API, которая поддерживает Internet Explorer 11. Мы полностью прекратим поддержку Internet Explorer 11 в августе 2022 г. Это также относится к режиму IE в Edge.

Android
  • Текущая версия Chrome на Android 4.1+.
  • Chrome WebView на Android 4.4+.
iOS
  • Мобильная версия Safari для текущей и предыдущей основной версии iOS.
  • UIWebView и WKWebView для текущей и предыдущей основной версии iOS.
  • Текущая версия Chrome для iOS.