Предварительный выпуск платформы Android N с OpenJDK и многооконным режимом

Компания Google анонсировала предварительный выпуск следующей редакции открытой мобильной платформы Android — Android N Developer Preview. Релиз Android N, который возможно будет поставляться под номером Android 7, ожидается в третьем квартале 2016 года. До этого времени периодически будут выпускаться предварительные выпуски Developer Preview, предоставляющие средства для разработки приложений с учётом новых возможностей платформы, таких как многооконный режим, интеграция OpenLDK, поддержка Java 8, функции блокировки номеров, новое оформление интерфейса быстрой настройки, режим экономии трафика, улучшенный режим энергосбережения Doze и возможность прямой отправки ответов из уведомлений.

В отличие от прошлых тестовых выпусков, компания Google запустила программу бета-тестирования, в рамках которой экспериментальную ветку можно установить и поддерживать в актуальном виде через штатный интерфейс установки обновлений (OTA, over-the-air), без необходимости ручной замены прошивки. Обновления доступны для пользователей устройств Nexus 6, Nexus 5X, Nexus 6P, Nexus Player, Nexus 9, Pixel C и General Mobile 4G (Android One).

Ключевые особенности Android N Developer Preview:

  • Многооконный режим работы, позволяющий разбивать экран на части для получения возможности работы одновременно с несколькими приложениями. Разбиение возможно в портретном и панорамном режимах. Кроме того, поддерживается режим «картинка в картинке», позволяющий, например, отправить сообщение, не прерывая просмотр видео на большом экране. Разработчикам приложений предоставлены средства для управления работой в многооконном режиме, например, можно задать минимальный размер окна в котором может корректно отображаться интерфейс приложения. 0_1457589513.jpeg
  • Все созданные при разработке Android библиотеки с Java API заменены на код из свободного пакета OpenJDK. Cозданные для Android компоненты Java API распространялись под разрешительной лицензией Apache (частично были использованы наработки Harmony, реализации Java от проекта Apache), в то время как OpenJDK поставляется под копилефт-лицензией GPL, обязывающей открывать все модификации. Переход на OpenJDK позволит Google избавить платформу от претензий компании Oracle, которая считает Java API своей интеллектуальной собственностью и препятствует созданию совместимых функциональных аналогов.
  • Предоставление разработчикам возможностей Java 8, которые стали доступны благодаря интеграции OpenJDK. В том числе в программах для Android теперь можно использовать лямбда-выражения, статические методы, аннотации, Stream API и т.п. Для сборки предлагается инструментарий Jack (Java Android Compiler Kit), предоставляющий средства для компиляции исходных текстов на языке Java в байткод в формате «dex». Jack пришёл на смену ранее используемому инструментарию на базе javac, ProGuard, jarjar и dx.
  • Возможность отправки ответа в окне получения уведомления. Получив выпадающее уведомление о поступлении нового сообщения, пользователь теперь может сразу написать ответ, не покидая этот диалог. 0_1457592798.png0_1457592645.png
  • Поддержка группировки уведомлений, связанных с одним приложением. Например, можно сгруппировать все уведомления о получении новых сообщений и отобразить их в списке уведомлений в форме одной свёрнутой группы, отдельные уведомления можно посмотреть после раскрытия группы. Подобный подход позволяет избежать нагромождения при большом числе непросмотренных уведомлений (например, будет показано, что пришло 5 SMS, 8 сообщений Hangouts, 3 письма и 4 обновления программ, с возможностью раскрытия каждой группы); 0_1457592757.png
  • Расширены возможности режима энергосбережения Doze, при котором после определённого периода неактивности пользователя устройство переводится в спящий режим, но с периодическим пробуждением на короткое время для того, чтобы дать приложениям возможность синхронизировать свои данные, а системе обработать ожидающие выполнения операции. Детали внесённый оптимизаций не приводятся, но устройство стало потреблять заметно меньше энергии в состоянии неактивности при выключенном экране;
  • Продолжено развитие проекта Svelte, нацеленного на сокращение потребления памяти и повышение отзывчивости при работе платформы Android на маломощных устройствах. Оптимизировано выполнение фоновых операций, JobScheduler и GCMNetworkManager адаптированы для планирования вызова заданий и выполнения сетевых запросов c учётом минимизации потребления ресурсов;
  • Режим Direct Boot, при котором устройство загружается в состояние с ограничением функциональности и активной блокировкой, но с предоставлением возможности получения уведомлений. Например, в случае перезагрузки устройство продолжит принимать сообщения и вызовы, но блокирует доступ к шифрованным данным и приложениям. Для перехода в нормальный режим пользователь должен снять блокировку;
  • В платформу встроена функция блокировки номеров телефонов, позволяющая отфильтровывать вызовы и сообщений с нежелательных номеров. Списки блокировки могут совместно использоваться в различных приложениях. Для разработчиков приложений предложен API для управления списками блокировки. Могут устанавливаться как постоянные, так и временные блокировки (пропадают после перезагрузки);
  • В настройки добавлен Data Saver, при включении которого фоновые сетевые операции допускаются только при выходе в Сеть через Wi-Fi. Трафик от приложений тоже блокируется, если программа специально не добавлена в белый список; 0_1457595457.png
  • В настройки добавлена возможность одновременного выбора нескольких локалей;
  • Для Android TV представлен интерфейс для записи телепередач по расписанию;
  • Переработан интерфейс быстрого доступа к настройкам; 0_1457594006.png

© OpenNet