Подробности о новой версии Android 9.0 Pie специально для Яндекс Дзен!

Данные из официального пресс-релиза Дэйва Берка, вице-президента Android.

6 августа 2018 года Дейв Берк объявил о выходе новой версии Android под названием "Пирог" (Pie) и рассказал о том, что будет в новой версии операционной системы. Делюсь подробностями прямо здесь и сейчас, приятного Вам чтения!

Android 9 Pie ("Пирог") из официального блога Android, источник - android-developers.googleblog.com
Android 9 Pie ("Пирог") из официального блога Android, источник - android-developers.googleblog.com

Что нового будет в Android 9?

Система машинного обучения, которая поможет смартфону стать значительно "умнее"

Android 9 помогает оптимизировать работу телефона за счёт определения того, как именно Вы его используете, путем выбора ваших предпочтений и автоматической настройки. Это позволяет увеличить время автономной работы, ускорить работу часто используемых приложений, выделяя им больше ресурсов и не заставляя пользователя долго ждать загрузки.

Адаптивная батарея

Появится новая функция под названием "Адаптивная батарея", разработанная в сотрудничестве с компанией DeepMind.

Суть проста - "адаптивная батарея" использует машинное обучение для назначения различных приоритетов для приложений, выделяя больше ресурсов для тех из них, которые часто используются пользователем, и уменьшая потребление энергии для редко используемых программ.

Адаптивная батарея в Android 9 Pie ("Пирог"), источник - android-developers.googleblog.com
Адаптивная батарея в Android 9 Pie ("Пирог"), источник - android-developers.googleblog.com

Если приложение оптимизировано для Doze, App Standby и Background Limits, адаптивная батарея должна хорошо работать прямо из коробки. Пользователь сам может корректировать список оптимизируемых приложений для более точного результата.

Разделение задач на "ломтики"

По аналогии с "пирогом", разрезаемым на части, в Android появилась возможность разделять задачи на небольшие фрагменты, что поможет пользователям быстрее выполнять задачи (осуществляется за счёт взаимодействий за пределами полноэкранного приложения).

Всё это реализуется с помощью шаблонов пользовательского интерфейса, которые помогут отображать динамический и интерактивный контент из Вашего приложения в поисковой системе Google, а позднее - в Google Assistant и других приложениях.

Это уменьшит время запуска нескольких приложений и, соответственно, ускорит работу системы.

Действия приложений

Новый способ повысить наглядность используемых приложений и привлечь внимание к использованию места на диске. Действия используют преимущества машинного обучения, чтобы показать пользователю приложение в нужное время, основываясь на контексте и поведении пользователя (например, предложить написать девушке\родственникам, если Вы делаете это постоянно, и т.д.)

Пример того, как выглядят "действия приложений" в Android 9 Pie, источник - android-developers.googleblog.com
Пример того, как выглядят "действия приложений" в Android 9 Pie, источник - android-developers.googleblog.com

Текстовый классификатор и умные ссылки (действия с помощью Smart Linkify).

Благодаря расширенным моделям ML, которые идентифицируют объекты в содержимом или при вводе текста, теперь поддерживается больше типов данных (например, даты и номера рейсов, адреса, ссылки, телефонные номера различных форматов).

Для этого используется API TextClassifier. Smart Linkify позволяет использовать модели TextClassifier через API Linkify, включая расширенные опции для быстрого последующего действия пользователя, а также увеличивает значительную точность обнаружения и производительность.

Smart Linkify в операционной системе Android 9 Pie, источник - android-developers.googleblog.com
Smart Linkify в операционной системе Android 9 Pie, источник - android-developers.googleblog.com

API Neural Networks 1.1

Добавилась обновлённая версия API нейронных сетей, позволяющая расширить поддержку Android для ускоренного обучения установленных приложений на устройстве.

Neural Networks 1.1 добавляет поддержку для девяти новых операционных систем - Pad, BatchToSpaceND, SpaceToBatchND, Transpose, Strided Slice, Mean, Div, Sub и Squeeze. Типичным способом использования API является использование TensorFlow Lite.

Станет проще добиться максимума возможностей от Вашего смартфона!

В Android 9 значительно доработан пользовательский интерфейс Android, чтобы его использование стало проще и доступней для пользователя. В свою очередь, для разработчиков подобные изменения помогут тратить меньше времени улучшить способ поиска, использования и управления приложениями для пользователей.

Новая система навигации

Android 9 вводит новую системную навигацию! Новый дизайн помогает сделать многозадачность для Android более доступной и упрощает поиск приложений. Вы можете прокручивать с любого места, чтобы увидеть полноэкранные превью недавно использованных приложений возвращаться в любое из них буквально в один клик!

Навигация в Android 9, источник - android-developers.googleblog.com
Навигация в Android 9, источник - android-developers.googleblog.com

Программная "обрезка" дисплея

Позволяет разместить важные элементы ПО на экране так, чтобы это не перекрывало просматриваемый контент. Для большинства приложений поддержка обрезки экрана является бесшовной. В настоящий момент всё ещё идёт внедрение этой опции, так что для помощи в разработке и тестировании, в Android 9 Pie добавили опцию разработчика, которая имитирует несколько форм выреза на любом устройстве.

Уведомления и интеллектуальные ответы

Android 9 делает уведомления еще более полезными и более эффективными. Приложения обмена сообщениями могут воспользоваться новыми API-интерфейсами MessagingStyle, чтобы показывать разговоры, прикреплять фотографии и наклейки, и даже предлагать интеллектуальные ответы.

Разработчики в скором времени смогут использовать ML Kit для создания приложений с функцией интеллектуальных ответов на запросы пользователя.

Уведомления MessagingStyle с диалогами и интеллектуальными ответами, источник - android-developers.googleblog.com
Уведомления MessagingStyle с диалогами и интеллектуальными ответами, источник - android-developers.googleblog.com

Экранная лупа для текста

В Android 9 добавится виджет Magnifier, чтобы улучшить пользовательский интерфейс при выборе текста. Виджет Magnifier позволяет пользователям точно позиционировать курсор или маркеры выбора текста, просматривая увеличенный текст через перетаскиваемую панель.

Пример действия экранной лупы для текста, источник - android-developers.googleblog.com
Пример действия экранной лупы для текста, источник - android-developers.googleblog.com

Виджет Magnifier также может предоставлять увеличенную версию любого вида или поверхности, а не только текст.

Улучшенная безопасность и конфиденциальность пользователей

Биометрические подсказки

Использование биометрических датчиков, используемых для аутентификации пользователей, в Android 9 станет удобней за счёт согласованной работы различных типов датчиков и приложений.

Android 9 представляет диалоговое окно, управляемое системой, для запроса пользователю любого поддерживаемого типа биометрической аутентификации. Приложениям больше не нужно создавать свой собственный диалог, вместо этого они используют API BiometricPrompt для отображения стандартного системного диалога. В дополнение к Fingerprint (технологии распознавания отпечатков пальцев, включая сенсорные дисплеи) API поддерживает аутентификацию на основе распознавания лица и сетчатки глаз.

Аутентификации по отпечатку пальца в Android 9 Pie, источник - android-developers.googleblog.com
Аутентификации по отпечатку пальца в Android 9 Pie, источник - android-developers.googleblog.com

Защищенное подтверждение

Android 9 представляет Android Protected Confirmation, в котором используется Trusted Execution Environment (TEE), для обеспечения гарантии того, что вводимая текстовая строка подсказки показывается и подтверждается именно пользователем, а не кем-то другим. Только после успешного подтверждения пользователя TEE выдаёт строку приглашения, которую приложение может проверить.

Более сильная защита для закрытых ключей

В Android 9 Pie добавили StrongBox в качестве нового типа KeyStore, предоставляя поддержку API для устройств, которые обеспечивают хранение ключей в защищенном от несанкционированного доступа оборудовании с изолированным процессором, оперативной памятью и защищенной вспышкой.

Вы можете установить, должны ли ваши ключи быть защищены чипом безопасности StrongBox в вашем KeyGenParameterSpec.

DNS через TLS

Android 9 добавляет встроенную поддержку DNS через TLS, автоматически обновляя DNS-запросы до TLS, если DNS-сервер сети поддерживает его. Пользователи могут управлять DNS, регулируя поведение TLS в новом режиме Private DNS в настройках сети и Интернета.

Приложения, которые выполняют собственные DNS-запросы, могут использовать новый API, LinkProperties.isPrivateDnsActive (), чтобы проверить режим DNS.

HTTPS по умолчанию

В рамках более масштабных усилий по переносу всего сетевого трафика из открытого текста (незашифрованного HTTP) на сайты, защищенные TLS (HTTPS), в Android 9 Pie изменены настройки по умолчанию для конфигурации сетевой безопасности, чтобы блокировать весь трафик с незащищённым соединением.

Уменьшение рисков безопасности на уровне компилятора

Теперь в Android несколько расширены возможности безопасности, чтобы защитить систему при обнаружении опасного поведения.

Методы Integrity Flow Flow (CFI) помогают предотвратить повторное использование кода и выполнение произвольного кода. В Android 9 значительно расширено использование CFI в среде мультимедиа и других важных для безопасности компонентов, таких как NFC и Bluetooth. Также внедрена поддержка ядра CFI в общем ядре Android при надстройках, использующих LLVM.

Также разработаны средства обнаружения, противодействия и устранения последствий атак, связанных с переполнением Integer, чтобы уменьшить уязвимости памяти и не допустить раскрытия какой-либо информации о пользователях и их действиях.

Общие нововведения в средствах обеспечения конфиденциальности пользователей

Android 9 защищает конфиденциальность несколькими новыми способами. Теперь система ограничивает доступ к микрофонам, камерам и всем датчикам SensorManager из приложений, которые не работают.

В то время как UID вашего приложения простаивает, микрофон сообщает о пустом звуке, и датчики перестают сообщать о событиях. Камеры, используемые вашим приложением, отключены и будут вызывать ошибку, если приложение попытается их использовать. В большинстве случаев эти ограничения не должны вводить новые проблемы для существующих приложений, но мы рекомендуем удалить эти запросы из ваших приложений.

Новые впечатления от камер, аудио и графики

Многокамерные API и другие обновления камеры

С Android 9 теперь Вы можете открывать потоки с двух или более камер одновременно на устройствах, поддерживающих API с несколькими камерами. На устройствах с камерами с двумя фронтальными или двойными обратными камерами Вы можете создавать инновационные функции, которые невозможно использовать с помощью только одной камеры, такой как бесшовный зум, боке и стереовидение.

HDR VP9 Video и сжатие изображения HEIF

Android 9 добавляет встроенную поддержку HDR VP9 Profile 2, поэтому теперь Вы можете передавать HDR-фильмы для своих подписчиков (и пользователей - в случае разработчиков приложений) на устройствах с поддержкой HDR.

Добавлена кодировка изображений HEIF (heic). HEIF - популярный формат для фотографий, который улучшает сжатие для сохранения данных и сетевых данных. Благодаря поддержке платформы на устройствах Android 9 легко отправлять и использовать изображения HEIF с удалённого сервера.

После того, как Вы убедитесь, что приложение совместимо с этим форматом данных, выберите HEIF в качестве формата хранения изображений в используемом приложении. Вы можете преобразовать jpeg-to-heic с помощью ImageDecoder или BitmapFactory для получения растрового изображения из jpeg или использовать HeifWriter в библиотеке AndroidX для записи неподвижных изображений HEIF из буфера YUV, Surface или Bitmap.

Улучшенный звук, полученный за счёт обработки динамических данных

API обработки динамических данных позволяет использовать новый аудиоэффект для выделения определенных частот, уменьшения громкости или увеличения тихих звуков для повышения качества звука выбранного приложения.

Например, Вы можете улучшить звук того, кто тихо говорит в громкой, далекой или иначе акустически сложной обстановке. API дает доступ к многоступенчатому многодиапазонному динамическому эффекту обработки, который включает в себя предварительный эквалайзер, многодиапазонный компрессор, постэквалайзер и связанный ограничитель.

источник - android-developers.googleblog.com
источник - android-developers.googleblog.com

ImageDecoder для растровых изображений и чертежей

API ImageDecoder предоставляет вам более простой способ декодирования изображений в растровые изображения или чертежи.

Вы можете создать растровое изображение или извлечь из буфера, файла или URI. API обладает несколькими преимуществами по сравнению с BitmapFactory, включая поддержку точного масштабирования, одношаговое декодирование в аппаратную память, поддержку пост-обработки в декодировании и декодирование анимированных изображений.

Возможности подключения и местоположение

Wi-Fi RTT для внутреннего позиционирования

Android 9 позволяет создавать встроенные функции позиционирования в приложениях через поддержку платформы для протокола Wi-Fi IEEE 802.11mc, также известного как Wi-Fi Round-Trip-Time (RTT).

На устройствах Android 9 с поддержкой аппаратного обеспечения, разрешениями местоположения и местоположением ваши приложения могут использовать RTT API для измерения расстояния до ближайших точек доступа Wi-Fi (AP). Устройство не нуждается в подключении к точкам доступа для использования RTT и для обеспечения конфиденциальности, только телефон может определить расстояние, а не точки доступа.

Зная расстояние до 3 или более точек доступа, вы можете рассчитать позицию устройства с точностью от 1 до 2 метров. С этой точностью вы можете поддерживать варианты использования, такие как встроенная навигация, дистанционное голосовое управление (например, «Включить свет»); и информация о местоположении (например, «Существуют ли специальные предложения для этого продукта?»).

Пример позиционирования с использованием Wi-Fi RTT в Android 9 Pie, источник - android-developers.googleblog.com
Пример позиционирования с использованием Wi-Fi RTT в Android 9 Pie, источник - android-developers.googleblog.com

Open Mobile API для платежей NFC и безопасных транзакций

Android 9 добавляет реализацию Android OpenPlatform Platform. На поддерживаемых устройствах приложения могут использовать OMAPI API для доступа к защищенным элементам (SE) для включения платежей смарт-карт и других безопасных сервисов.

Производительность для приложений

Эффективность ART

Android 9 обеспечивает повышение производительности и эффективности для всех приложений за счёт времени выполнения ART. Расширено использование профилей выполнения ART для оптимизации приложений и уменьшения объема встроенного кода приложения в памяти устройства на базе ОС Android.

ART теперь использует информацию о профиле для перезаписи DEX-файлов на устройствах с уменьшением до 11% в ряде популярных приложений.

Оптимизация для Kotlin

В Android 9 Pie продолжает расширяться поддержка языка Kotlin, включая оптимизацию производительности кода. В Android 9 Вы увидите первые результаты этой работы - разработчики произвели несколько оптимизаций компилятора, особенно тех из них, которые нацелены на циклы, чтобы обеспечить лучшую производительность.

Когда выйдет Android 9 Pie?

Начиная с осени 2018 года Android 9 выходит для устройств Pixel, а также устройств, которые участвовали в бета-тесте от Sony Mobile, Xiaomi, HMD Global, Oppo, Vivo, OnePlus и Essential и всех прошедших отбор устройств Android One.

Спасибо за внимание!

Если Вам понравилась эта статья, ставьте лайк, делитесь публикацией с друзьями или подписывайтесь на канал, чтобы видеть ещё больше полезного и интересного каждый день недели!