Продолжение, начало здесь.

HDR VP9 Video, HEIF image compression, и Media APIs

Android P добавляет встроенную поддержку HDR VP9 Profile 2, так что теперь вы можете предоставлять фильмы с поддержкой HDR для своих пользователей с YouTube, Play Movies и других источников на устройствах с поддержкой HDR.

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

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

Чувствительность к стоимости данных в JobScheduler

JobScheduler — это центральная служба Android, которая поможет вам управлять запланированными задачами или работать с изменениями Doze, App Standby и Background Limits. В Android P JobScheduler лучше обрабатывает сетевые задания для пользователя, координируя сигналы состояния сети, предоставляемые отдельнsыми операторами.

Теперь Jobs могут объявить свой примерный размер данных, предварительно запрограммировать сигнал и указать подробные требования к сети. Операторы могут сообщать о сетях как перегруженных или неизмеренных. Затем JobScheduler управляет Jobs в соответствии с состоянием сети. Например, когда сеть перегружена, JobScheduler может отложить большие сетевые запросы. Когда незамерена, он может выполнять задания предварительной выборки, чтобы улучшить пользовательский интерфейс, например, путем предварительной выборки заголовков.

Когда вы добавляете задания, попробуйте использовать setEstimatedNetworkBytes(), setIsPrefetch() и setRequiredNetwork(), чтобы JobScheduler правильно обрабатывал работу. Когда ваша работа выполняется, обязательно используйте объект Network, возвращаемый JobParameters.getNetwork(), иначе вы будете неявно использовать сетевую сеть устройства, которая может не соответствовать вашим требованиям, что приведет к непреднамеренному использованию данных.

Neural Networks API 1.1

Мы внедрили API Neural Networks в Android 8.1, чтобы ускорить обучение устройств на устройстве на Android. В Android P мы расширяем и улучшаем этот API, добавляя поддержку девяти новых ops — Pad, BatchToSpaceND, SpaceToBatchND, Transpose, Strided Slice, Mean, Div, Sub и Squeeze. Если у вас есть устройство Pixel 2, сборка DP1 теперь включает в себя драйвер Qualcomm Hexagon HVX с ускорением для квантованных моделей.

Улучшения автозаполнения

В Android P мы продолжаем совершенствовать систему автозаполнения на основе отзывов пользователей и разработчиков. Наряду с ключевыми исправлениями, этот выпуск включает новые API-интерфейсы, которые позволяют администраторам паролей улучшать работу пользователей Autofill, например, лучшую фильтрацию данныхinput sanitization и режим совместимости. В частности, режим совместимости оказывает большое влияние на конечных пользователей, поскольку он позволяет администраторам паролей использовать подход, основанный на доступности, в приложениях, которые еще не имеют полной поддержки Autofill, но без влияния на производительность или безопасность. Посмотрите все подробности о том, что нового здесь.

Читать ещё :   Android Storage : Internal, External, Removable. Часть 1

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

Android P добавляет реализацию Android MobilePlatform Open Mobile для Android. На поддерживаемых устройствах приложения могут использовать OMAPI API для доступа к защищенным элементам (SE) для включения платежей смарт-карт и других безопасных сервисов. Уровень абстракции аппаратного обеспечения (HAL) предоставляет базовый API для перечисления множества безопасных элементов (eSE, UICC и других).

Усиление основ Android

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

Безопасность для приложений

В Android P мы переходим к более согласованному интерфейсу для проверки подлинности отпечатков пальцев в приложениях и устройствах. Android теперь предоставляет стандартный системный диалог, чтобы побудить пользователя коснуться датчика отпечатков пальцев, управлять текстом и местом размещения, подходящим для устройства. Приложения могут запускать диалог отпечатка системы с помощью нового API-интерфейса FingerprintDialog. Мы рекомендуем как можно скорее переключиться на новый системный диалог.
В рамках более масштабного усилия по переносу всего сетевого трафика из открытого текста (незашифрованного HTTP) в TLS мы также меняем настройки по умолчанию для конфигурации сетевой безопасности Network Security Configuration, чтобы блокировать весь трафик с открытым текстом. Теперь вам нужно подключиться к TLS, если вы явно не входите в clearartext для определенных доменов.

Конфиденциальность для пользователей

Чтобы лучше обеспечить конфиденциальность, Android P ограничивает доступ к микрофонам, камерам и всем датчикам SensorManager из приложений, которые не работают. В то время как UID вашего приложения простаивает, микрофон сообщает о пустом звуке, и датчики перестают сообщать о событиях. Камеры, используемые вашим приложением, отключены и будут вызывать ошибку, если приложение попытается их использовать. В большинстве случаев эти ограничения не должны вводить новые проблемы для существующих приложений, но мы рекомендуем удалить эти запросы из ваших приложений.
Мы также включим шифрование резервных копий Android с секретностью на стороне клиента. Эта функция все еще находится в активной разработке и будет запущена в будущем выпуске для предварительного просмотра Android P.
В долгосрочной перспективе мы работаем над тем, чтобы обеспечить поддержку для каждой сети рандомизации (per-network randomization) связанных MAC-адресов на платформе. На поддерживаемых устройствах под управлением Android P вы можете включить это экспериментально для тестирования в качестве новой опции разработчика.
Android P также дает пользователю контроль над доступом к идентификатору build.serial платформы, помещая его за разрешением READ_PHONE_STATE. Прямой доступ к этому идентификатору был устаревшим с Android 8.0. Чтобы получить доступ к идентификатору build.serial, вы должны использовать метод Build.getSerial().

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

Мы работаем над повышением производительности и эффективности для всех приложений с помощью среды выполнения ART. Мы расширили использование профилей выполнения АРТ для оптимизации приложений и уменьшения объема записанного кода приложения в памяти. ART теперь использует информацию о профиле для перезаписи DEX-файлов на устройствах с уменьшением до 11% в ряде популярных приложений. Мы ожидаем, что они будут тесно связаны с сокращением использования памяти системы DEX и более быстрым временем запуска для ваших приложений.

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

Kotlin — это первоклассный язык на Android, и если вы еще не пробовали его, вы должны это сделать! Мы проявили постоянную приверженность Kotlin в Android и продолжаем расширять поддержку, включая оптимизацию производительности кода Kotlin. В P вы увидите первые результаты этой работы — мы улучшили несколько оптимизаций компилятора, особенно тех, которые нацелены на циклы, чтобы извлечь лучшую производительность. Мы также продолжаем работать в партнерстве с JetBrains для оптимизации генерируемого кода Kotlin. Вы можете получить все последние улучшения производительности Kotlin, просто обновив плагин Android Studio Kotlin.

Энергоэффективность

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

Ориентация на современный Android

Android P формируется нашими долгосрочными инициативами по модернизации основ Android и приложений, которые работают на нем. Недавно мы объявили, что к ноябрю 2018 года Google Play потребует обновления всех приложений для Android Oreo (targetSdkVersion 26 или выше) с поддержкой 64-битного оборудования на горизонте на 2019 год.
В соответствии с этими изменениями Android P будет предупреждать пользователей о диалоге при установке приложения, предназначенного для платформы ранней, чем Android 4.2 (targetSdkVersion меньше 17), а будущие версии платформы будут продолжать увеличивать эту нижнюю границу. Мы поощряем каждого разработчика Android начать планирование миграции на целевой API 26 сейчас и начать работу по миграции как можно скорее. Вот список ресурсов для помощи и поддержки — мы с нетерпением ждем, как ваши приложения получат максимальную пользу от современного Android.

Улучшение совместимости приложений с помощью общедоступных API

Ключевой проблемой для пользователей и разработчиков является совместимость приложений — убедитесь, что приложения готовы к новым версиям платформы по мере их поступления, без риска сбоев для пользователей и аварийных развертываний для разработчиков. Приложения, использующие общедоступные API-интерфейсы Android из SDK или NDK, находятся в хорошей совместимости, но приложения, использующие частные интерфейсы и библиотеки Android, не являются.
Поэтому с Android P мы начинаем постепенный процесс ограничения доступа к выбранным не-SDK-интерфейсам, предлагая разработчикам, включая команды приложений внутри Google, использовать вместо этого публичные эквиваленты. В случаях, когда для вашего юзкейса нет публичного эквивалента, сообщите нам об этом — мы хотим убедиться, что этот процесс для разработчиков настолько плавный, что мы будем использовать ваши отзывы, чтобы гарантировать, что начальное развертывание влияет только на API, где разработчики могут легко перейти на общедоступные альтернативы. Подробнее об ограничениях здесь.

Читать еще

Читать ещё :   LiveData. Часть 3