Предварительный выпуск платформы Android N с OpenJDK и многооконным режимом
10 марта 2016 года
Компания Google анонсировала предварительный выпуск следующей редакции открытой мобильной платформы Android - Android N Developer Preview. Релиз Android N, который возможно будет поставляться под номером Android 7, ожидается в третьем квартале 2016 года. До этого времени периодически будут выпускаться предварительные выпуски Developer Preview, предоставляющие средства для разработки приложений с учётом новых возможностей платформы, таких как многооконный режим, интеграция OpenJDK, поддержка 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:
- Многооконный режим работы, позволяющий разбивать экран на части для получения возможности работы одновременно с несколькими приложениями. Разбиение возможно в портретном и панорамном режимах. Кроме того, в версии для телевизоров поддерживается режим "картинка в картинке", позволяющий, например, отправить сообщение, не прерывая просмотр видео на большом экране. Разработчикам приложений предоставлены средства для управления работой в многооконном режиме, например, можно задать минимальный размер окна в котором может корректно отображаться интерфейс приложения.
- Все созданные при разработке 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.
- Возможность отправки ответа в окне получения уведомления. Получив выпадающее уведомление о поступлении нового сообщения, пользователь теперь может сразу написать ответ, не покидая этот диалог.
- Поддержка группировки уведомлений, связанных с одним приложением. Например, можно сгруппировать все уведомления о получении новых сообщений и отобразить их в списке уведомлений в форме одной свёрнутой группы, отдельные уведомления можно посмотреть после раскрытия группы. Подобный подход позволяет избежать нагромождения при большом числе непросмотренных уведомлений (например, будет показано, что пришло 5 SMS, 8 сообщений Hangouts, 3 письма и 4 обновления программ, с возможностью раскрытия каждой группы);
- Расширены возможности режима энергосбережения Doze, при котором после определённого периода неактивности пользователя устройство переводится в спящий режим, но с периодическим пробуждением на короткое время для того, чтобы дать приложениям возможность синхронизировать свои данные, а системе обработать ожидающие выполнения операции. Детали внесённый оптимизаций не приводятся, но устройство стало потреблять заметно меньше энергии в состоянии неактивности при выключенном экране;
- Продолжено развитие проекта Svelte, нацеленного на сокращение потребления памяти и повышение отзывчивости при работе платформы Android на маломощных устройствах. Оптимизировано выполнение фоновых операций, JobScheduler и GCMNetworkManager адаптированы для планирования вызова заданий и выполнения сетевых запросов c учётом минимизации потребления ресурсов;
- Режим Direct Boot, при котором устройство загружается в состояние с ограничением функциональности и активной блокировкой, но с предоставлением возможности получения уведомлений. Например, в случае перезагрузки устройство продолжит принимать сообщения и вызовы, но блокирует доступ к шифрованным данным и приложениям. Для перехода в нормальный режим пользователь должен снять блокировку;
- В платформу встроена функция блокировки номеров телефонов, позволяющая отфильтровывать вызовы и сообщений с нежелательных номеров. Списки блокировки могут совместно использоваться в различных приложениях. Для разработчиков приложений предложен API для управления списками блокировки. Могут устанавливаться как постоянные, так и временные блокировки (пропадают после перезагрузки);
- В настройки добавлен Data Saver, при включении которого фоновые сетевые операции допускаются только при выходе в Сеть через Wi-Fi. Трафик от приложений тоже блокируется, если программа специально не добавлена в белый список;
- Расширены возможности среды выполнения ART, которая позволяет в момент установки приложения скомпилировать его в машинный код и в дальнейшем выполнять программу в нативном виде, без задействования виртуальной машины. В новом выпуске система упреждающей AOT-компиляции (Ahead-of-time) дополнена JIT-компилятором с поддержкой профилирования кода, позволяющего выбрать оптимальный план оптимизации на основе характеристик, учитывающих особенности выполнения приложения. Для каждого приложения формируется профиль оптимизации, позволяющий выбрать оптимальные методы AOT-компиляции для достижения максимальной производительности или минимального потребления памяти;
- В настройки добавлена возможность одновременного выбора нескольких локалей;
- Для Android TV представлен интерфейс для записи телепередач по расписанию;
- Поддержка OpenGL ES 3.2;
- Возможность настройки постоянного соединения через VPN (SettingsMoreVpn) и запуска VPN сразу после загрузки;
- Представлен новый API для организации доступа приложений к директориям на внешних носителях, таких как SD-карты. Новый API существенно упрощает процесс открытия доступа к типовым директориям, таким как "Фотографии" или "Видео";
- Переработан интерфейс быстрого доступа к настройкам;
- Увеличено число опций для настройки оформления строки состояния. Например, отключить отображение различных типов пиктограмм и настроить формат вывода времени. Добавлен интерфейс калибровки цветов и ночной режим c приглушенной яркостью экрана;
- Упрощён интерфейс переключения между приложениями и возврата на прошлое приложение;
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.