Компания Google представила вторую бета-версию открытой мобильной платформы Android Q. Релиз Android Q, который скорее всего будет поставляться под номером Android 10, ожидается в третьем квартале 2019 года. Для оценки новых возможностей платформы предложена программа бета-тестирования, в рамках которой экспериментальную ветку можно установить и поддерживать в актуальном виде через штатный интерфейс установки обновлений (OTA, over-the-air), без необходимости ручной замены прошивки. Обновления доступны для устройств Pixel, Pixel XL, Pixel 2, Pixel 2 XL, Pixel 3 и Pixel 3 XL.

Изменения, по сравнению с первым бета-выпуском:

  • Представлено новое хранилище Scoped Storage, предоставляющее уровень изоляции для файлов приложений. При помощи данного API приложение может создать на внешних накопителях (например, на sd-карте) отдельный изолированный каталог для своих файлов, к которому не смогут получить доступ другие приложения. Текущее приложение будет ограничено этим каталогом для хранение фотографий, видео и музыки, и не будет пересекаться с общими коллекциями мультимедийных файлов. Для получения совместного доступа к общим коллекциям файлов потребуется получение отдельных полномочий;
  • Добавлена концепция «пузырей» для организации одновременной работы с несколькими приложениями. Пузыри позволяют выполнять действия в других приложениях не покидая текущей программы. Кроме того, пузыри дают возможность закрепления доступа к функциональности определённого приложения в процессе выполнения различных действий на устройстве. Например, при помощи пузырей можно в форме отображаемых поверх контента кнопок продолжать беседу в мессенджере, быстро отправлять сообщения, держать на виду список задач, вести заметки, обращаться к сервисам перевода и получать наглядные напоминания, параллельно c работой в других приложениях. Пузыри реализованы поверх системы уведомлений и позволяют использовать аналогичный API.

  • В SDK добавлен новый эмулятор устройств со сгибающимися складными экранами, который доступен в тестовом выпуске Android Studio 3.5 в форме дополнительного виртуального устройства, представленного в вариантах с экранами в 7.3 (4.6) и 8 (6.6) дюймов. В платформе для складных устройств расширены обработчики onResume и onPause, в которых добавлена поддержка раздельного отключения нескольких экранов, а также реализованы расширенные уведомления о попадании приложения в фокус;

  • Расширена реализация ярлыков для отправки данных и сообщений (Sharing Shortcuts), позволяющих быстро перейти в приложение, осуществляющее отправку. Во второй бета-версии появилась возможность предпросмотра отправляемого контента;
  • Добавлен API MicrophoneDirection для управления захватом звука с направленных микрофонов. При помощи данного API можно указать направление для ориентации микрофона при записи звука). Например, при создании селфи-видео можно указать setMicrophoneDirection(MIC_DIRECTION_FRONT) для записи с микрофона в лицевой части устройства. Через указанный API также можно управлять микрофонами с меняющейся областью охвата (zoomable), определяя размер области для записи.

Дополнительно опубликован апрельский набор исправлений проблем с безопасностью для Android, в котором устранено около 100 уязвимостей, из которых 74 выявлены в закрытых компонентах для чипов Qualcomm.
10 уязвимостям присвоен критический уровень опасности, а остальным высокий уровень опасности. 2 критические уязвимости устранены в мультимедийном фреймворке и позволяют выполнить код при обработке специально оформленных мультимедийных данных. Одна проблема найдена в Bluetooth-стеке и позволяет совершить удалённую атаку через Bluetooth. Остальные 7 критических уязвимостей выявлены в драйверах и проприетарных компонентах для чипов Qualcomm. Большинство из данных проблем позволяет совершить удалённую атаку для выполнения своего кода в системе. Проблемы помеченные как опасные позволяют через манипуляции с локальными приложениями выполнить код в контексте привилегированного процесса.

Также можно отметить публикацию компанией Intel отчёта о проведении оптимизации компилятора runtime (ART) для Android 9 (Pie), отвечающего за преобразование универсального байткода DEX в машинные инструкции, специфичные для конкретных CPU. Выполненная работа позволила увеличить производительность системы в среднем на 14-16% при работе на устройствах на базе платформы Intel In-Vehicle Solutions (на базе CPU Intel Atom A3960). Наиболее заметными улучшениями стало добавление оптимизаций для развёртывания циклов, ускорения передачи вызовов между Java и нативным кодом, ускорения операций деления и вычисления модуля с числами в степени двойки.