Компания Google представила (https://android-developers.googleblog.com/2019/03/introducin... бета-версию открытой мобильной платформы Android Q. Релиз Android Q, который скорее всего будет поставляться под номером Android 10, ожидается (https://developer.android.com/preview/overview.html) в третьем квартале 2019 года. Для оценки новых возможностей платформы предложена (https://www.google.com/android/beta) программа бета-тестирования (https://developer.android.com/preview/download.html), в рамках которой экспериментальную ветку можно установить и поддерживать в актуальном виде через штатный интерфейс установки обновлений (OTA, over-the-air), без необходимости ручной замены прошивки. Обновления доступны (https://www.google.com/android/beta) для устройств Pixel, Pixel XL, Pixel 2, Pixel 2 XL, Pixel 3 и Pixel 3 XL.
Ключевые новшества (https://developer.android.com/preview/features.html) Android Q:
- Предоставлено больше инструментов для контроля за доступом приложений к информации о местоположении пользователя. Если раньше, в случае предоставления соответствующих полномочий, приложение могло получить доступ к местоположению в любое время, даже когда оно неактивно (работает в фоне), то в новом выпуске пользователь может разрешить получение информации о его местоположении только в случае активности сеанса с приложением;
- Добавлены (https://developer.android.com/preview/privacy) дополнительные ограничения доступа приложений к совместно используемым файлам, таким как коллекции фотографий, видео и музыка;
- Для доступа к загруженным файлам, размещённым в каталоге Downloads, приложение теперь обязательно должно использовать системный диалог выбора файла, который предоставляет пользователю полный контроль над тем, к каким конкретно файлам может обратиться приложение;
- Блокирована возможность перехода приложений из фонового выполнения в активное состояние с выходом на передний план и получением фокуса ввода, прерывая таким образом работу пользователя с другим приложением. При необходимости привлечения внимания пользователя фоновым приложением, например, при входящем звонке, теперь следует использовать высокоприоритетные уведомление с получением полномочий на полноэкранный вывод;
- Ограничен (https://developer.android.com/preview/privacy/data-identifiers) доступ к неизменяемым идентификаторам устройства, таким как IMEI и серийный номер. Для получения подобных идентификаторов приложение должно иметь привилегии READ_PRIVILEGED_PHONE_STATE.
Приложениям также ограничен доступ к псевдо-ФС "/proc/net" со статистикой сетевой активности, а доступ к данным в буфере обмена отныне предоставляется только когда приложение активно (получило фокус ввода);
- При отдаче списка контактов приложению прекращено ранжирование вывода по частоте обращения к контактам для сокрытия от приложений информации о предпочтениях пользователя;
- По умолчанию включена рандомизация MAC-адресов: при подключении к разным беспроводным сетям теперь генерируются разные MAC-адреса, что не позволяет отслеживать перемещение пользователя между WiFi-сетями;
- Для доступа к API сканирования сетей Bluetooth, сотовых сетей и Wi-Fi теперь требуется получение полномочий на получение точных сведений о местоположении (ранее требовались полномочия на получение приблизительных сведений о местоположении). При этом, если соединение устанавливается в режиме P2P или сеть для подключения определяется системой, то отдельные полномочия на доступ к информации о местоположении не требуются;
- Реализована поддержка технологии защиты беспроводных сетей WPA3 (https://www.opennet.ru/opennews/art.shtml?num=48854), в которой предоставляется защита от атак по подбору пароля (не позволит подбирать пароль в offline-режиме) и задействован протокол аутентификации SAE. Для генерации ключей шифрования в открытых сетях добавлена поддержка процесса согласования соединения, реализуемого расширением OWE (Opportunistic Wireless Encryption (https://tools.ietf.org/html/rfc8110));
- Добавлена поддержка устройств со сгибающимися складными экранами, таких как Huawei Mate X (https://www.youtube.com/watch?v=Lr58lNpLkj4). На каждой половинке складного экрана теперь может размещаться отдельное приложение. Для поддержки новых типов экранов добавлена поддержка раздельной обработки множественных событий пробуждения и смены фокуса (когда одна половина экрана активна, а другая остаётся закрытой или когда обе половинки активны), а также расширен API для обработки изменения размера экрана (для того чтобы приложение корректно воспринимало увеличение размера экрана при раскрытии второй половины). В эмулятор Android добавлена симуляция устройств со сгибающимися экранами;
- Добавлена поддержка ярлыков для отправки данных и сообщений (Sharing Shortcuts), позволяющих быстро перейти в приложение, осуществляющее отправку;
- Добавлена поддержка всплывающих панелей с настройками, которые позволяют обратиться к ключевым системным настройкам в контексте пользовательского приложения. Для отображения панелей настройки из приложения предоставляется API Settings Panel (https://developer.android.com/reference/android/provider/Set.... Например, мультимедийный проигрыватель может показать панель с системными настройками звука, а браузер настройки сетевого подключения и перехода в режим полёта;
- Проведён рефакторинг беспроводного стека для усиления приватности и увеличения производительности, а также для улучшения управления устройствами интернета вещей через локальный Wi-Fi (например, для вывода на печать через Wi-Fi) и выбора точек подключения. Функции сканирования доступных точек доступа теперь предоставлюется платформой с выводом найденных сетей в интерфейсе Wi-Fi Picker и автоматической настройкой соединения в случае его выбора пользователем. Приложениям через API WifiNetworkSuggestions предоставлена возможность влиять на алгоритм выбора предпочитаемых беспроводных сетей путём передачи приложением ранжированного списка сетей и паролей для подключения к ним. Кроме того, при выборе сети, к которой осуществляется подключение, теперь учитываются метрики о пропускной способности при прошлом подключении (выбирается наиболее быстрая сеть);
- Добавлены два режима работы Wi-Fi - режим достижения максимальной пропускной способности и режим минимальных задержек (например, полезен для игр и голосовых коммуникаций);
- Приложения для работы с камерой и изображениями теперь могут запросить у камеры передачу дополнительных XMP-метаданных в файле JPEG, включающих сведения, необходимые для обработки глубины на фотографиях (например, сохраняемая двойными камерами карта глубины). Указанные параметры можно применять для реализации различных режимов размытия фона и эффекта боке (https://ru.wikipedia.org/wiki/%D0%91%D0%... а также для создания 3D-фотографий или в системах дополненной реальности;
- Добавлена поддержка видеокодека AV1 (https://www.opennet.ru/opennews/art.shtml?num=48345), который позиционируется как общедоступный и не требующий оплаты отчислений свободный формат кодирования видео, который заметно опережает H.264 и VP9 по уровню сжатия;
- Добавлена поддержка свободного звукового кодека Opus (https://www.opennet.ru/opennews/art.shtml?num=49472), обеспечивающего высокое качество кодирования и минимальную задержку как при сжатии потокового звука с высоким битрейтом, так и при сжатии голоса в ограниченных по пропускной способности приложениях VoIP-телефонии;
- Добавлена поддержка стандарта HDR10+ (https://en.wikipedia.org/wiki/High-dynamic-range_video#HDR10+), применяемого для кодирования видео с повышенным динамическим диапазоном;
- В API MediaCodecInfo добавлен упрощённый метод для определения доступных на устройстве возможностей вывода видео (выводится список кодеков и поддерживаемых на устройстве разрешений и FPS);
- Добавлен API Native MIDI (https://developer.android.com/preview/features/midi), предоставл...
URL: https://android-developers.googleblog.com/2019/03/introducin...
Новость: https://www.opennet.ru/opennews/art.shtml?num=50342