Диспетчер задач
Впервые о списке последних приложений, где последние представлены большими картинками со скриншотом самого приложения, заговорили в Android 3.0 – система для планшетов предложила обновленный диспетчер задач. Дальше он перекочевал в Android 4.0 и все последовавшие версии.
Но с момента выхода «четвертого робота» Google придумала более интересный способ вывода списка открытых программ. Точнее сначала компания придумала новое оформление списка вкладок в браузере Chrome – в виде вкладок-карточек. А потом, очевидно поняв, как это удобно и наглядно, решила точно также выводить и список последних приложений.
Причем влияние браузера на диспетчер задач из Android 5.0 буквально «торчит из всех щелей». Отдельные вкладки теперь выводятся в списке на уровне отдельных приложений. И, что самое главное, с другими приложениями ровно та же ситуация: несколько вкладок могут получить настройки системы, Google Drive, где открыто несколько документов (по вкладке на каждый). Диалоги Hangouts, письма в Gmail/Inbox и так далее – теперь в центре открытый документ, а не отдельное приложение. И сторонних разработчиков это касается – они могут пользоваться этой функцией Android 5.0.
Заголовок каждый вкладки – это название документа. Слева от него – логотип приложения. Закрыть вкладку можно как жестом «сметания» в сторону, так и просто нажав на крестик справа. Обратите внимание – приложения из Android 5.0, способные изменять цвет строки состояния, также меняют и цвет заголовка вкладки.
Впрочем, механизм вывода вкладок пока не совсем отработан. Точнее это касается вкладок браузера Chrome. Для них слева выводится не иконка браузера, а темно-серый квадрат с первой буквой названия сайта. Почему там нет иконки-логотипа сайта, которая задана для большинства веб-страниц, непонятно. Но вообще в будущих версиях браузер сможет выводить эту иконку и определять цвет заголовка вкладки по данным, указанным на сайте при помощи специального метатэга.
Разумеется, все вкладки документов приложений группируются – вперемешку документы из Google Drive и страницы Chrome новый Android не выведет.
Без регресса, к сожалению, не обошлось. В Android 4.x если долго удерживать палец на приложении, появится меню, где можно открыть информацию о приложении, либо удалить его из списка. В Android 5.0 это приводит к принудительному закрытию приложения. Впрочем, функция не удалена, а лишь глубоко скрыта – включите средства разработчика и она вернется. Но много ли пользователей так поступит?
А вообще в новом диспетчере задач исправлено порядочно ошибок, актуальные для прошлых версий Android. Например, если нажать на кнопку «Поделиться» в Play Store, открывается приложение Gmail с новым письмом и ссылкой на приложение. И теперь почтовый клиент виден как отдельная вкладка, а раньше – как второй Play Store. И таких глюков было несколько.
И последнее насчет диспетчера задач Android 5.0 – это функция блокировки приложения (Screen pinning в английской версии). Она позволяет блокировать смартфон на работу с одним единственным приложением.
Включив ее в настройках, в диспетчере задач на вкладках в правом нижнем углу появится значок канцелярской кнопки. Ее нажатие приведет к блокированию смартфона на конкретно это приложение. При этом исчезает строка состояния. Выйти отсюда просто – достаточно зажать кнопки Назад и списка приложений, так что эту блокировку нельзя использовать для публичных терминалов. Но вообще разработчики получили API, позволяющий проводить блокировку на более серьезном уровне.
Project Volta
Во все последние версии Android Google активно внедряла всякие «проекты». Так в Jelly Bean (Android 4.1, 4.2 и 4.3) был реализован Project Butter (проект «масло»). Его главная цель – обеспечить анимацию с частотой кадров 60 в секунду. Это обеспечивает плавность переключения интерфейса. Android 4.4 предложил Project Svelte («стройный» проект), чья цель – работа системы на устройствах с 512 Мбайтами оперативной памяти. Впрочем, отдельных уникумов устраивали и более ранние «андройды» - видели мы Android 4.2 на 256 Мбайтах ОЗУ.
И вот теперь Android 5.0 предлагает познакомиться с Project Volta (проект «вольта»). Он направлен на снижение энергопотребления. Да-да, выше мы, описывая какая замечательная вещь новая виртуальная машина ART, упомянули, что она теперь еще и энергию экономит. Но ART делает это автоматически, благодаря своей архитектуре, тогда как Project Volta – это набор API, который могут использовать разработчики в своих приложениях. То есть это средство для программистов и заработает оно только в том случае, если те «снизойдут».
Один из главных модулей Project Volta – это специальный скрипт Battery Historian, написанный на Python и позволяющий собирать данные о потреблении энергии приложением. Все выводится в виде графика и можно отследить, в каких моментах программа ест заряд аккумулятора максимально.
Работая над Project Volta в Google провели эксперимент. Они включили на Nexus 5 режим полета (Airplane mode), выключили экран и посмотрели, когда сядет аккумулятор. Угадаете, когда? Через месяц! Итого вывод здесь предельно простой: чем больше телефон будет в спящем режиме, тем лучше.
Однако в том-то и «фишка» Android и его приложений – весь этот «зоопарк» любит работать в фоне. Программы выполняют определенные запланированные операции, осуществляют фоновую чистку, ведут лог событий, обновляют свои базы, отправляют статистику и так далее. И чем больше у вас приложений, тем больше подобной «подковерной» деятельности творится на вашем смартфоне.
Отказаться от этой функциональности нельзя, но ее можно систематизировать. Для этого был создан API JobScheduler, который позволяет планировать подобные операции. Ведь эффективнее «проснуться» один раз в два часа, чем «дергать» телефон каждые 3 минуты.
Точно также происходит и с интернет-соединением. Без JobScheduler программа просто запрашивает доступ в сеть, а если его нет, то повторяет операцию через несколько минут. JobScheduler может не только это спланировать, но и задать условия, при которых соединение будет предоставлено: подключение по Wi-Fi, мобильной сети, к компьютеру и так далее.
Кроме того системе можно будет указать, что задачу надо выполнить не «ровно через столько-то минут», а, к примеру, в течение ближайших двух часов. Таким образом JobScheduler накопит несколько подобных запросов и выполнит их все махом за один раз.
Если разработчики послушаются рекомендации Google (а мы надеемся, они это сделают – на месте поисковика я бы ввел какие-либо мотивационные приоритеты), то можно будет добиться до 15-20% улучшения по части энергопотребления. Например, так уже оптимизирован магазин Play Store, который в отсутствие Wi-Fi соединения даже не пытается проверить обновления приложений, экономя не только энергию, но и платный трафик в мобильных сетях.
Еще в настройках появился раздел Режим энергосбережения или Battery saver в английской версии. Включив его, система более агрессивным образом начнет понижать частоту процессора, снижать активность фоновых задач, будет урезана анимация и так далее. Когда режим активен, строка состояния и навигационная панель перекрашиваются в ярко-оранжевый. Также активацию режима можно сделать автоматической при заряде аккумулятора 5% или 15%.