Предварительный выпуск Android 14

Компания Google представила первую тестовую версию открытой мобильной платформы Android 14. Релиз Android 14 ожидается в третьем квартале 2023 года. Для оценки новых возможностей платформы предложена программа предварительного тестирования. Сборки прошивки подготовлены для устройств Pixel 7/7 Pro, Pixel 6/6a/6 Pro, Pixel 5/5a 5G и Pixel 4a (5G).

Ключевые новшества Android 14:

  • Продолжена работа по улучшению работы платформы на планшетах и устройствах со складными экранами. Обновлены рекомендации по разработке приложений для устройств с большими экранами и добавлены типовые шаблоны интерфейса для больших экранов, учитывающие такие применения, как социальные сети, коммуникации, мультимедийный контент, чтение и совершение покупок. Предложен предварительный выпуск Cross device SDK с инструментами для разработки приложений, корректно работающих с разными типами устройств (смартфоны, планшеты, умные телевизоры и т.п.) и разными форм-факторами.
  • Проведена оптимизация координации выполнения ресурсоёмких фоновых работ, таких как загрузка больших файлов при наличия WiFi-соединения.
    Внесены изменения в API запуска приоритетных сервисов (Foreground Service) и планирования задач (JobScheduler), в которые добавлена новая функциональность для запускаемых пользователем работ, связанных с передачей данных. Введены требования по указанию типа запускаемых приоритетных сервисов (работа с камерой, синхронизация данных, воспроизведение мультимедийных данных, отслеживание местоположения, доступ к микрофону и т.п.). Упрощено определение условий активации загрузки данных, например, для загрузки только при доступе через Wi-Fi.
  • Внутренняя система доставки широковещательных сообщений приложениям (broadcast system) оптимизирована для снижения энергопотребления и повышения отзывчивости. Улучшен приём приложениями зарегистрированных потоков сообщений – сообщения могут помещаться в очередь, объединяться (например, серия сообщений BATTERY_CHANGED будет агрегирована в одно) и доставляться только после выхода приложения из кэшированного состояния.
  • Использование в приложениях функции выполнения операций в точное время (exact alarms) теперь требует получения отдельного полномочия SCHEDULE_EXACT_ALARM, так как использование данной функциональности может негативно влиять на время автономной работы и приводить к повышенному потреблению ресурсов (для заданий, выполняемых по расписанию, рекомендуется использовать активацию в приблизительное время). Приложениям с реализацией календаря и часов, использующим активацию в точное время, при установке должно быть предоставлено полномочие USE_EXACT_ALARM. Публикации в каталоге Google Play приложений с разрешением USE_EXACT_ALARM допускается только для программ с реализацией будильника, таймера и календаря с уведомлениями о событиях.
  • Расширены возможности масштабирования шрифтов, максимальный уровень масштабирования шрифта увеличен со 130% до 200%, а для того, чтобы текст при большом увеличении не выглядел слишком большим автоматически теперь применяется нелинейное изменение уровня масштабирования (уже большой текст увеличивается не так сильно, как мелкий).

  • Предоставлена возможность указания настроек языка, привязанных к отдельным приложениям. Разработчик приложения теперь может изменять параметры localeConfig через вызов LocaleManager.setOverrideLocaleConfig для определения списка языков, показываемых для приложения в интерфейсе настройки Android.
  • Добавлен API Grammatical Inflection для упрощения добавления переводов элементов интерфейса, учитывающих языки с системой родов.
  • Для предотвращения перехвата вредоносными приложениями intent-запросов в новой версии запрещена отправка intent-ов без явного указания пакета или внутреннего компонента.
  • Повышена безопасность динамической загрузки кода (DCL, Dynamic Code Loading) – для избежания подстановки вредоносного кода в динамически загружаемые исполняемые файлы, данные файлы теперь должны иметь права доступа, допускающие только чтение.
  • Запрещена установка приложений, для которых заявлена версия SDK ниже 23, что позволит блокировать обход ограничений полномочий, через привязку к старым API (версия API 22 запрещена, так как в верcии 23 (Android 6.0) появилась новая модель управления доступом, позволяющая на лету запросить доступ к системным ресурсам). Установленные ранее приложения, использующие старые API, после обновления Android продолжат свою работу.
  • Предложен API Credential Manager и реализована поддержка технологии Passkeys, позволяющей пользователю проходить аутентификацию без паролей с использованием биометрических сенсоров, таких как отпечаток пальца или распознавание лица.
  • В Android Runtime (ART) реализована поддержка OpenJDK 17 и предоставляемых в данной версии языковых возможностей и Java-классов, в том числе классов типа record, многострочных строк и сопоставления c образцом в операторе “instanceof”.
  • Для упрощения тестирования работы приложений с учётом изменений в новой версии Android, разработчикам предоставлена возможность выборочного включения и отключения отдельных новшеств через секцию для разработчиков в конфигураторе или утилиту adb.

Release. Ссылка here.