Содержание статьи
Прошивки смартфонов многих производителей — это зачастую нечто гораздо большее, чем просто Android. Тот же Galaxy S4 просто-таки нафарширован различными функциями. С другой стороны, часто дополнительная функциональность оказывается настолько удачной, что возникает желание немедленно обратиться в Google с просьбой включить ее в ванильный Android. К счастью, даже если Google не ответит, всегда найдется приложение, повторяющее нужную функцию достаточно точно.
Предисловие
Поводом к написанию этой статьи стал анонс смартфона Moto X всем нам известной Моторолы. Одна из ее функций, а именно Active Display, которая выводила уведомления прямо на экран во время их появления или когда берешь смартфон в руку, настолько меня заворожила, что я взялся за поиски альтернативной реализации чего-то похожего для стокового Android. Сразу ничего, конечно, найти не удалось, но со временем в Google Play появилось несколько реализаций идеи, одна из которых оказалась очень даже неплохой; я приобрел платную версию и до сих пор с удовольствием использую приложение.
Позже появилось желание изучить мир прошивок других смартфонов и узнать, можно ли получить их функциональность в голом Android. Результаты этих изысканий предлагаются твоему вниманию.
Active Display
Начнем с того самого активного дисплея. Если ты пропустил анонс или обзор Moto X, то Active Display — это фоновый сервис, который при появлении нового уведомления (пришло письмо, сообщение, SMS) включает экран и выводит на него информацию о пропущенных событиях в лаконичном виде. Через некоторое время экран гаснет, но, когда берешь смартфон в руки, вновь загорается, так что нажимать кнопку включения вообще не нужно. Более того, если уведомление придет, когда телефон находится в кармане, дисплей загорится только после того, как ты достанешь его.
Это действительно очень удобный способ просмотра пришедших сообщений и уведомлений, который к тому же спасет смартфон от преждевременной смерти кнопки включения. Приложений, активирующих данную функцию в стоковом Android, пока только два, это Active Notify и DynamicNotifications. Причем, как оказалось, первое всего лишь пародия на Active Display, которая умеет включать экран во время возникновения событий, но не включает его при взятии смартфона в руки или при извлечении из кармана. Поэтому фактически реальная замена только одна.
Нужная функциональность есть только в платной версии DynamicNotifications, но она стоит всего один доллар, поэтому смело покупаем, устанавливаем и запускаем, после чего видим экран настроек. Включаем опцию Enable DynamicNotifications, ниже включаем опцию Auto-wake, которая как раз отвечает за умный показ уведомлений, а также по желанию опцию Night-mode, которая отключает активный дисплей на ночь (да, время можно настроить). Если речь идет об аппарате на Android 4.3, после запуска приложение также попросит предоставить ему доступ к уведомлениям и само перенаправит в нужный раздел настроек. Благодаря этой функции DynamicNotifications сможет показывать не только сам факт возникновения уведомления, но и подробности о нем.
Хакер #178. Mesh-сети или строим свой интернет
Далее смартфон можно спокойно использовать в повседневной жизни. Когда придет уведомление, экран загорится и позволит получить доступ к подробностям события и разблокировать устройство. Внутренние алгоритмы приложения достаточно хороши для того, чтобы, например, при извлечении из кармана экран всегда загорался, как положено. Если же смартфон лежит на столе, то доступ к уведомлениям можно получить, просто проведя ладонью поверх датчика приближения (чуть выше экрана). Если смартфон перевернуть, отключится активный дисплей.
Теперь о том, сколько батареи жрет софтина и как быть с не-AMOLED дисплеями. Простой ответ на первый вопрос: 2–4%. Сложный: в отличие от Moto X, в котором под активный дисплей отведено работающее на пониженных частотах ядро процессора, DynamicNotifications включается только тогда, когда есть сами уведомления, и только в это время он тратит батарею на слежение за датчиками приближения и положения, в остальное время процесс спит. Если включить в настройках приложения использование DynamicNotifications в качестве экрана блокировки, он будет бодрствовать всегда и съест примерно 20%. Нужно это тебе или нет, решай сам.
Что касается AMOLED, то историю с ним придумали те, кто не знал, как на самом деле работает активный дисплей в Moto X, и думал, что экран там горит вообще всегда. В данном случае тип дисплея не имеет практически никакого значения, и в Moto X с таким же успехом могли бы поставить матрицу IPS+.
Air Swiper
Я уже упоминал, как можно включать экран, проведя ладонью над датчиком приближения. По сути, это баг (который фича) DynamicNotifications, появившийся в результате работы алгоритма, отвечающего за включение экрана после извлечения из кармана. Однако если в данном приложении бесконтактные жесты всего лишь побочный эффект, то в некоторых прошивках и приложениях это полноценная функция, которой хвастается производитель.
Например, в прошивках от компании Samsung бесконтактные жесты занимают далеко не последнее место среди других популярных функций. Здесь с их помощью можно включать и выключать смартфон, перелистывать страницы в браузере, переключать треки и принимать звонки. И смартфон даже умеет различать, какой именно стороной руки пользователь провел над датчиком: ладонью или ребром.
Большая часть этой функциональности — это обычный для Samsung рекламный ход, почти не имеющий практического применения (очень сложно представить человека, которому будет удобнее перелистывать страницы, махая рукой, чем проматывать пальцем), однако, как показал пример с DynamicNotifications, даже такая спорная идея, как бесконтактные жесты, может найти достойное применение.
В Google Play на тему бесконтактных жестов есть полностью бесплатное приложение под названием Air Swiper. Среди его возможностей:
- автоматическое включение экрана при получении SMS и открытие сообщения жестом;
- включение и выключение экрана жестом;
- включение беззвучного режима с помощью удержания руки над датчиком приближения;
- включение/выключение Wi-Fi и Bluetooth жестом.
Не знаю, будет ли вся эта функциональность удобна тебе, тут надо пробовать самому. Для себя я нашел только одну полезную функцию: включение экрана жестом. В конце концов, DynamicNotifications срабатывает только тогда, когда есть уведомления, а это приложение работает всегда. Оказалось, однако, что функция куда менее удобна, чем кажется. Для разблокировки устройства приходится проводить рукой не один, а целых три раза, что сделать правильно удается далеко не всегда. К тому же от случайного срабатывания трехразовый взмах также не защищает; телефон может разблокироваться, если, например, держа его в руке, пройти рядом с забором.
В общем и целом, Air Swiper — интересное приложение, но его полезность невысока, как, впрочем, и полезность аналогичной функциональности в фирменных прошивках.
Smart Stay
Еще одна разрекламированная функция прошивок от Samsung — это функция Smart Stay, которая появилась в Galaxy S3 и была предназначена для поддержания экрана включенным до тех пор, пока пользователь от него не отворачивался. В основе механизма лежал достаточно простой алгоритм, который периодически делал снимок фронтальной камерой и анализировал, открыты ли глаза пользователя. Да — тайм-аут отключения продлевается, нет — отключаем экран.
Функция действительно хорошо работала и имела успех у пользователей, поэтому в Galaxy S4 Samsung расширила ее и, по своей традиции, довела идею до абсурда. В частности, появилась функция включения паузы в видеоплеере при отведении взгляда от экрана (специально для просмотра порно, видимо), прокрутка страницы, когда взгляд достигает конца экрана в браузере (игра: успей прочитать последнюю строку) и отключение автоматического поворота экрана при наклоне устройства вместе с головой (мы же так любим читать, лежа на боку!).
Но как бы ни были абсурдны идеи, заложенные в S4, оригинальный Smart Stay действительно хорош. И неудивительно, что в Google Play появилось множество подражателей. Smart Stay Ex — один из них. Это небольшое приложение, которое делает ровно то, что оригинальная функция из третьего Galaxy, то есть просто не дает экрану погаснуть.
Все, что нужно сделать, чтобы получить эту функцию на своем смартфоне, — это просто установить и запустить приложение, включить его с помощью переключателя в верхней части экрана и выбрать опцию Start at boot. После этого в строке состояния появится значок приложения, который будет менять цвет в зависимости от ситуации: синий — экран не будет отключаться, серый — экран будет отключен через минуту, желтый — идет сканирование.
Приложение просыпается каждые несколько секунд (половина от системного тайм-аута блокировки) и делает снимок. Если результат анализа снимка будет положительным (глаза открыты), тайм-аут выключения экрана будет продлен, отрицательный — приложение заснет еще на несколько секунд и после второй неудачной попытки сканирования отключит экран. Количество попыток можно выбрать самостоятельно, от 1 до 5, но дефолтовое значение 2 здесь полностью оправданно. Даже в вечернее время Smart Stay Ex всегда правильно определяет состояние глаз, поэтому обычно достаточно только одной попытки.
Как вердикт: определенно must have, точная работа и минимальная, почти незаметная, нагрузка на батарею. Минус один: часто дает сбои ночью.
Quick Settings
Очередная знаменитая функция прошивок от Samsung — это так называемая панель быстрых настроек, небольшая плашка с кнопками включения/выключения Wi-Fi, звука, GPS и прочего, которая находится в верхней части «шторки». Изначально идея, конечно, была придумана и реализована не Samsung, а разработчиками CyanogenMod, а после этого растащена всеми кому не лень (например, AOKP, ParanoidAndroid, MIUI). В самом CyanogenMod она доступна начиная с древнего cm7, но если ты предпочитаешь использовать голый Android или фирменную прошивку производителя устройства, то получить нужную функциональность можно, установив Settings Extended.
По сути, все, что делает это приложение, — это создает в шторке те самые кнопки. Но есть и множество гибких настроек, с помощью которых можно определить количество и набор отображаемых кнопок, добавить вторую строку кнопок, а также определить их внешний вид и цвет. Последние две настройки, однако, доступны только в платной версии приложения, но ее цена всего один доллар. Также платная версия включает в себя дополнительные кнопки и возможность запуска других приложений.
Каких-либо проблем, связанных с работой кнопок и их поведением, свойственных другим подобным приложениям, в Settings Extended нет. Строка кнопок всегда отображается в верхней части панели, не съезжает вниз и не исчезает при очистке шторки. Кнопки срабатывают сразу после нажатия и не приводят к открытию каких-либо окон. Все работает ровно так, как и должно, но за это приходится платить тем, что приложение доступно только для Android 4.0 и выше (именно в четвертой версии появились все необходимые функции, позволяющие реализовать интерактивные уведомления).
В общем и целом — просто отличная альтернативная реализация оригинальной функциональности.
Многооконный режим
В прошивках LG и Samsung есть две разные в реализации, но одинаковые по назначению функции LG QSlide и Samsung Pop-Up Play. Это не что иное, как набор приложений (браузер, видеоплеер, калькулятор и так далее), которые умеют работать в обособленном плавающем окне, так же как в Windows например. Не совсем понятно, чем, кроме рекламы, руководствовались обе компании, включая такие функции в прошивки для смартфонов, но в планшете нечто подобное может быть очень и очень удобным.
В Google Play подобных приложений довольно много. Причем, как оказалось, функциональность, позволяющая реализовать такой режим, есть в API Android, так что они не требуют ни прав root, ни каких-либо хаков вроде Xposed. Из наиболее примечательных можно назвать заметки Floating Stickies, веб-браузер OverSkreen, видеоплеер Stick It!, ютуб-плеер с длинным названием Floating YouTube Popup Video, клавиатуру A.I.type keyboard tablet, а также Tiny Apps — комплект из пяти приложений, в который входят:
- заметки с возможностью вставки, копирования и сохранения;
- простой диктофон;
- холст для рисования с возможностью сохранения и отмены;
- простой музыкальный проигрыватель;
- калькулятор с поддержкой сложных математических операций.
Уверен, что большинство из этих приложений не приживутся на твоем устройстве, а останутся разве что видеоплеер и клавиатура. У клавиатуры, кстати, есть три режима работы: обычная, плавающая и плавающая с разделением клавиш для правой и левой рук. В последнем режиме она будет состоять из двух разных блоков клавиш, расположенных в разных сторонах экрана, что существенно упрощает ввод текста, а к тому же не отнимает место у запущенного в данный момент приложения.
Что касается самой идеи, то, на мой взгляд, она во многом бесполезна. Экраны гаджетов не настолько велики, чтобы многооконность была оправданной.
LG Vu Talk
В прошивке смартфонов серии Optimus Vu II есть поддержка интересной технологии под названием LG Vu Talk. Это такой местный Paint, позволяющий во время звонка рисовать и делать заметки, которые сразу увидит собеседник. Очень даже полезная в некоторых ситуациях функциональность: можно быстро набросать схему или обсудить общую идею (синхронизация идет в обе стороны). Проблема только в том, что у собеседника тоже должен быть LG Optimus Vu, а вероятность этого довольно низка.
К счастью, в Google есть приложение с амбициозным названием SyncSpace Shared Whiteboard. По сути, тот же разделяемый Paint, за исключением того, что для установления связи между устройствами одного звонка будет недостаточно и придется отправить также ссылку. Зато работает везде и все, включая тот же Optimus Vu.
Пользоваться приложением просто, но интерфейс у него не очевиден. Нужно сделать следующее: установить софтину, запустить, открыть меню, выбрать пункт «Syncing…», а затем нажать «Start Syncing». После этого нужно снова открыть меню, опять выбрать «Syncing…», а далее нажать либо «Email Sync Link…», либо «Copy Sync Link» — и все. На другой стороне достаточно будет открыть ссылку, и приложение будет открыто автоматически.
Интеллектуальная регулировка громкости
Во многих прошивках, в том числе кастомных, есть две любимые пользователями функции. Это автоматическое включение беззвучного режима при перевороте устройства экраном вниз и возможность задать интервалы тихого времени, когда смартфон не будет издавать звуки. Это определенно полезная функциональность, которой почему-то нет в обычном Android. К счастью, ситуацию легко исправить с помощью сторонних приложений.
Лучшее из лучших среди приложений для выполнения подобных задач и всего, что связано с автоматизацией Android, — это Tasker. Это инструмент, который позволяет назначать те или иные действия в ответ на произошедшее событие (время, место, включение Wi-Fi, что угодно), но так как Tasker достаточно сложен в использовании и с наскоку в нем не разобраться, то я отправлю тебя прочитать большую статью об этом инструменте, которая уже была опубликована в нашем журнале, а вместо него расскажу о простых в использовании приложениях, которые делают ровно то, что нам нужно.
Первое приложение — Flip4Silence. Это простой сервис, который реагирует на изменение показаний датчика положения и отключает звук при перевороте смартфона экраном вниз. В качестве дополнения приложение также умеет приглушать звук звонка, когда телефон будет взят в руки. Это тоже очень удобная и полезная функциональность.
Второе приложение — Auto Vibrate. Приложение с двойной функциональностью. Позволяет отключать звук не только в определенные часы, но и в определенном месте. То есть можно, например, настроить приложение так, чтобы оно отключало звук на работе или в кинотеатре. Но это только в теории, на практике же GPS в помещениях может просто не сработать, так что всецело полагаться на приложение не стоит.
INFO
В CyanogenMod отключение звука по времени можно настроить в меню «Звук -> Тихие часы».
Заключение
Конечно же, это не все фирменные функции, которые можно найти в прошивках тех или иных производителей смартфонов. За кадром остались камера-комбайн с огромным количеством бесполезных функций от Samsung, заметки поверх экрана от LG, функция приближения видео в плеере от Samsung и LG, Smart Actions от Motorola и многие другие. Большинство этих функций тебе никогда не понадобятся, а вот те, которые попали в статью, будут весьма полезны.