Компания Google представила (https://android-developers.googleblog.com/2019/05/whats-new-...) третью бета-версию открытой мобильной платформы Android Q. Релиз Android Q, который будет поставляться под номером Android 10, ожидается (https://developer.android.com/preview/overview.html) в третьем квартале 2019 года. В анонсе также сообщается о достижении платформой рубежа в 2.5 миллиарда активных Android-устройств.Для оценки новых возможностей платформы предложена (https://www.google.com/android/beta) программа бета-тестирования (https://developer.android.com/preview/download.html), в рамках которой экспериментальную ветку можно установить и поддерживать в актуальном виде через штатный интерфейс установки обновлений (OTA, over-the-air), без необходимости ручной замены прошивки. Обновления доступны (https://www.google.com/android/beta) для 15 устройств, включая смартфоны Google Pixel, Huawei Mate, Xiaomi Mi 9, Nokia 8.1, Sony Xperia XZ3, Vivo NEX, OPPO Reno, OnePlus 6T, ASUS ZenFone 5Z, LGE G8, TECNO Spark 3 Pro, Essential Phone и realme 3 Pro.
Значительно расширить число доступных для тестирования устройств удалось благодаря проекту Treble (https://www.opennet.dev/opennews/art.shtml?num=46542), позволяющему производителям создавать универсальные компоненты поддержки оборудования, не привязанные к конкретным версиям Android (можно использовать одни и те же драйверы с различными версиями Android), что существенно упрощает сопровождение прошивок и создание обновлённых прошивок с актуальными выпусками Android. Благодаря Treble производитель может использовать в качестве основы уже готовые обновления от Google, интегрируя в них специфичные для конкретного устройства компоненты.
Изменения в третьей бета-версии Android Q по сравнению со вторым (https://www.opennet.dev/opennews/art.shtml?num=50455) и первым (https://www.opennet.dev/opennews/art.shtml?num=50342) бета-выпусками:
- Представлен проект Mainline (https://android-developers.googleblog.com/2019/05/fresher-os...), позволяющий обновлять отдельные системные компоненты без обновления платформы целиком. Подобные обновления загружаются через Google Play отдельно от OTA-обновлений прошивки от производителя. Предполагается, что прямая доставка обновлений не привязанных к оборудованию компонентов платформы позволит существенно сократить время получения обновлений, увеличить оперативность исправления уязвимостей и снизить зависимость от производителей устройств в поддержании безопасности платформы. Примечательно, что модули с обновлениями изначально будут поставляться с открытым кодом, будут сразу доступны в репозиториях AOSP (Android Open Source Project) и смогут включать улучшения и исправления, подготовленные сторонними участниками.
Из компонентов, которые будут обновляться раздельно, на первом этапе названы 13 модулей: мультимедийные кодеки, мультимедийный фреймворк, DNS-резолвер, Conscrypt (https://github.com/google/conscrypt) Java Security Provider, Documents UI, Permission Controller, ExtServices, данные часовых поясов, ANGLE (https://developer.android.com/preview/features/angle.md) (прослойка для трансляции вызовов OpenGL ES в OpenGL, Direct3D 9/11, Desktop GL и Vulkan), Module Metadata, сетевые компоненты, Captive Portal Login и настройки сетевого доступа. Обновления системных компонентов поставляются в новом формате пакетов APEX (https://g.co/android/apex), который отличается от APK возможностью применения на раннем этапе загрузки системы. На случае возможных сбоев предусмотрен режим отката изменений;
- Добавлена поддержка стандарта мобильной связи 5G (https://ru.wikipedia.org/wiki/5G), для которого будут адаптированы имеющиеся API управления соединениями. В том числе через API приложения могут определять наличие высокоскоростного соединения и активности тарификации по трафику;
- Добавлена функция "Live Caption", позволяющая автоматически на лету создавать субтитры при просмотре любого видео или прослушивания звуковых записей, независимо от используемого приложения. Распознавание речи производится локально без обращения к внешним сервисам;
- Cистема автоматических быстрых ответов, ранее доступная для уведомлений, теперь может применяться для формирования рекомендаций наиболее вероятных действий в любых приложениях. Например, при показе сообщения с приглашением на встречу система предложит быстрые ответы с согласием или отклонением приглашения, а также покажет кнопку для просмотра намеченного места встречи на карте. Варианты выбираются с использованием системы машинного обучения на основании изучения особенностей работы пользователя;
- На уровне системы реализована тёмная тема оформления (https://developer.android.com/preview/features/darktheme) которая может применяться для снижения утомления глаз при недостаточном освещении.
Тёмная тема включается в настройках Settings > Display, через выпадающий блок быстрых настроек или при включении режима экономии энергии. Тёмная тема применяется как для системы, так и для приложений, в том числе предлагая режим автоматического преобразования в тёмные тона существующих тем;
- Добавлена режим навигации жестами, позволяющий использовать для управления только экранные жесты без отображения навигационной панели и выделяя всё экранное пространство под контент. Например, кнопки типа Back и Home заменяются на сдвиг от края и скользящее касание снизу-вверх, для вызова списка запущенных приложений применяется длительное касание к экрану. Режим включается в настройках "Settings > System > Gestures";
- Добавлен "фокусный режим" (Focus Mode), позволяющий на время, когда нужно сосредоточится на решении какой-то задачи, выборочно приглушить отвлекающие приложения, например, приостановить получение почты и новостей, но оставить карты и мессенджер;
- Добавлен режим родительского контроля "Family Link", позволяющий ограничить время работы детей с устройством, предоставлять бонусные минуты за успехи и достижения, просматривать списки запускаемых приложений и оценивать сколько времени в них проводит ребёнок, рецензировать устанавливаемые приложения и назначать ночное время для блокирования доступа по ночам;
- Добавлен новый API для захвата звука, позволяющий одному приложению
предоставить возможность обработки звукового потока другим приложением. Для предоставления доступа других приложений к звуковому выводу требуется предоставление специального разрешения;
- Добавлен Thermal API, позволяющий приложениям контролировать показатели температуры CPU и GPU и самостоятельно принимать меры для снижения нагрузки (например, снижать FPS в играх и уменьшать разрешение транслируемого видео), не дожидаясь пока системе принудительно не начнёт урезать активность приложений.
Дополнительно опубликован (https://source.android.com/security/bulletin/2019-05-01) майский набор исправлений проблем с безопасностью для Android, в котором устранено 30 уязвимостей, из которых 8 уязвимостям присвоен критический уровень опасности, а 21 - высокий уровень опасности. Большинство критических проблем позволяет совершить удалённую атаку для выполнения своего кода в системе. Проблемы помеченные как опасные позволяют через манипуляции с локальными приложениями выполнить код в контексте привилегированного процесса. 11 опасных и 4 критических уязвимостей выявлены в закрытых компонентах для чипов Qualcomm (https://www.opennet.dev/opennews/art.shtml?num=50572). Одна критическая уязвимость устранена в мультимедийном фреймворке и позволяет выполнить код при обработке специально оформленных мультимедийных данных. Три критические уязвимости исправлены в системных компонентах и могут привести к выполнению кода при обработке специально оформленных файлов в формате PAC.
URL: https://android-developers.googleblog.com/2019/05/whats-new-...
Новость: https://www.opennet.dev/opennews/art.shtml?num=50651