Что такое Tasker? Это инструмент автоматизации смартфона, позволяющий запрограммировать реакцию устройства на то или иное системное и не очень событие. Tasker, например, может отреагировать на переворот смартфона экраном вниз и в ответ отключить звук. Он может сработать в момент падения уровня заряда батареи до 30% и перевести смартфон в режим 2G. С помощью Tasker можно запрограммировать включение GPS в ответ на запуск приложения Google Maps или включение режима полета по ночам.
Практически любое системное событие, связанное с сенсорами или состоянием устройства, может быть использовано Tasker для запуска того или иного действия, приложения, вывода на экран информации или генерации диалоговых окон с различными элементами управления. По уровню возможностей Tasker уже превратился в полноценную визуальную среду программирования, которая может быть расширена за счет многочисленных плагинов, доступных в маркете.
Хочешь создать свои собственные голосовые команды? Нет проблем, в маркете есть плагин AutoVoice. Нужна возможность автоматического удаленного управления другим устройством или ПК? Для этого есть AutoRemote. А как насчет доступа к низкоуровневым настройкам Android? К твоим услугам Secure Settings.
Как я уже сказал ранее, принцип работы Tasker основан на реакции на определенные события и изменения состояния смартфона. В терминологии Tasker они называются контекстом. К контексту можно привязать ту или иную задачу, которая состоит из одного или нескольких действий. Действием может быть что угодно, от запуска приложения до изменения определенных настроек. В том случае, если речь идет о продолжительном контексте (с девяти утра до пяти вечера, местоположение и прочее), а не одиночном событии (запуск приложения, например) может существовать также и «выходная задача», которая сработает после завершения контекста.
Вместе связка из контекста, задачи и последовательности действий называется профилем. Сразу после запуска Tasker предложит создать первый профиль — нажать «плюс» внизу экрана и выбрать нужное событие или контекст (например, время). Далее он предложит привязать к нему задачу, дать ей имя и определить нужные действия. После определения действий профиль станет активным. В любое время ты сможешь экспортировать профиль и выложить в сеть, чтобы другие смогли использовать его.
Кроме профилей, контекстов и задач, в Tasker есть понятие «сцена». Это своего рода заскриптованные диалоговые окна с кнопками, слайдерами и другими элементами интерфейса Android. Сцену можно создать с помощью визуального редактора, располагающегося на третьей вкладке главного экрана Tasker, а затем связать с контекстами и задачами, получив таким образом почти полноценное приложение. С помощью Tasker App Factory его можно упаковать в APK-пакет и выложить в Google Play.
Набор встроенных в Tasker действий можно существенно расширить с помощью сторонних плагинов, которые в огромном количестве доступны в Google Play. О некоторых из них я уже сказал выше, другие мы рассмотрим позже. Плагины Tasker есть в комплекте многих известных приложений, так что их тоже можно автоматизировать. В частности, Tasker способен управлять такими приложениями, как Screen Filter, Rsync Backup, Folder Sync, DashClock.
В своей работе Tasker использует две ключевые особенности Android: обмен сообщениями и открытый характер ОС. В отличие от многих других ОС компоненты Android почти не связаны друг с другом и для общения используют систему сообщений. Сообщения могут как предназначаться отдельно взятому приложению/классу, так и иметь широковещательный характер (broadcastIntent), что позволяет принять их любому установленному приложению.
Широковещательные сообщения используются в Android в том числе для таких задач, как уведомление приложений о системных событиях: низкий уровень заряда батареи, включение/отключение GPS, получение SMS и так далее. Изначально все это было придумано для более слаженной работы системы и сторонних приложений, но Tasker использует такие сообщения для реализации идеи «контекста».
Кроме этого, Android достаточно открыт для сторонних приложений, позволяя им в том числе управлять яркостью дисплея, включать те или иные настройки, самостоятельно запускать приложения и многое другое. Эта особенность ОС позволяет Tasker реализовать идею «задач» и «действий», а вместе с концепцией «контекстов» они образуют «профили», то есть наборы действий, которые выполняются в ответ на системное событие.
В iOS и Windows Phone аналог Tasker не может существовать по причине малой осведомленности приложений о системных событиях и серьезных ограничений на управление системой из сторонних приложений.
Начнем с самых простых, но зачастую жизненно необходимых профилей. Создать их можно за несколько секунд, а пользы будет много. Вот те, что в разное время так или иначе использовал я.
— По уровню возможностей Tasker уже превратился в полноценную визуальную среду программирования
В некоторых фирменных прошивках уже есть функция управления взмахом, которая позволяет переключать композиции или отвечать на звонок, встряхнув смартфон. Само собой, сходную функциональность можно повторить и с помощью Tasker. Вот алгоритм настройки:
Контекст: Событие -> Sensor -> Shake -> Axis: Left-Right
Задача: Экран -> Блокировать
Это описание профиля, который будет отключать экран после тряски смартфона в руке влево-вправо (Axis: Left-Right). В качестве задачи можно привязать и любые другие доступные в Tasker действия. Например, «Аудио -> Громкая связь» или «Телефон -> Начать разговор». Можно также настроить запуск приложения с помощью «Приложение -> Запустить приложение».
Нет никакого смысла держать смартфон включенным ночью. С другой стороны, автоматическое включение по утрам настроить тоже нельзя (такая функция есть только в китайских смартфонах), но можно ставить на ночь режим полета. Чтобы проделать такое с помощью Tasker, придется установить плагин Secure Settigs (начиная с Android 4.2 Google заблокировала возможность управлять режимом полета сторонним приложениям), а дальше настроить профиль таким образом:
Контекст: Время -> с 1:00 до 7:00
Задача: Плагин -> Secure Settings -> Root Actions -> Airplane Mode
Для выбора действия в самом плагине следует нажать на значок карандаша рядом с надписью «Конфигурация». Вместо режима полета можно использовать «Аудио -> Режим тишины» для включения беззвучного режима.
Один из самых популярных профилей. Конфигурация:
Контекст: Состояние -> Аппаратура -> Наушники подключены
Задача: Приложение -> Запустить приложение -> Выбираем нужный плеер
Также в задачу можно добавить дополнительное действие, регулирующее громкость (Аудио -> Громкость воспроизведения).
На отдельных устройствах, которые не часто выносишь на улицу (например, планшетах), яркость удобнее регулировать вручную. А еще удобнее с помощью Tasker. На моем планшете, например, есть два профиля:
Контекст: Время -> с 9:00 до 20:00
Задача: Экран -> Яркость дисплея -> 100
Контекст: Время -> с 20:01 до 8:59
Задача: Экран -> Яркость дисплея -> 0
В дневное время суток яркость устанавливается на треть от максимальной (максимальная — это 255), в остальное время — на минимум. Естественно, автоматическое управление яркостью следует отключить.
Идеальный вариант для тех, кто часто проводит время вне дома с ноутбуком за плечом. Очень простой и полезный профиль:
Контекст: Состояние -> Подключено по USB
Задача: Сеть -> Интернет по USB
Честно говоря, я не поклонник таких методов энергосбережения, но многим, как говорится, нравится. Смысл в том, чтобы заставить смартфон автоматически отключать 3G, GPS, Wi-Fi и устанавливать минимальную яркость дисплея при достижении критического уровня заряда.
Контекст: Состояние -> Уровень зарядки -> от 0 до 30
Задача:
Экран -> Яркость дисплея -> 0
Сеть -> Моб. данные -> Только 2G
Сеть -> Статус Wi-Fi -> Выключить
Плагин -> Secure Settings -> System+ Actions -> GPS -> Off
Очевидно, что в зависимости от твоего местоположения смартфон должен действовать по-разному. Например, вне дома должен быть включен пин на экране блокировки и GPS, в то время как Wi-Fi можно отключить. Дома пин блокировки не нужен, зато нужен Wi-Fi и высокая громкость звонка (чтобы ты смог услышать смартфон, подключенный к заряднику, находясь на кухне). На работе/учебе лучше включить режим вибрации, а в некоторых случаях настроить автоматический ответ на SMS.
Tasker имеет в своем распоряжении несколько способов определения местоположения. Это информация от спутников GPS, информация от сотовых вышек, факт подключения к Wi-Fi-сети с определенным именем или даже нахождение рядом с такой Wi-Fi-сетью. Наиболее экономичный и универсальный из них — это информация от вышек, однако при не слишком плотном покрытии сети они могут давать неточную информацию с разбросом в несколько километров. В этом случае лучше применять ориентирование по Wi-Fi-сетям. Даже в постоянно включенном состоянии Wi-Fi гораздо экономичнее модуля GPS, который не сможет уснуть, если его будет постоянно дергать Tasker.
Далее я привел три разных профиля Tasker для дома, улицы и работы, основанные на ориентации по Wi-Fi-сетям. Профиль для дома:
Контекст: состояние -> сеть -> подключено к Wi-Fi-сети -> имя сети
Задача:
Аудио -> Громкость звонка -> 7
Сеть -> Автосинхронизация -> Выключить
Плагин -> Secure Settings -> System+ Actions -> GPS -> Off
Плагин -> Secure Settings -> Root Actions -> Wireless ADB -> On
Плагин -> Secure Settings -> Dev Admin Actions -> Password/Pin -> Disabled
Что делает этот профиль: устанавливает максимальную громкость звонка, отключает автосинхронизацию (зачем получать уведомления о письмах дома?), отключает GPS, включает ADB по Wi-Fi (для управления смартфоном с ПК) и отключает пин-код. Следующий профиль для улицы:
Контекст: состояние -> сеть -> подключено к Wi-Fi-сети -> «если не»
Задача:
Аудио -> Громкость звонка -> 4
Сеть -> Автосинхронизация -> Включить
Плагин -> Secure Settings -> System+ Actions -> GPS -> On
Плагин -> Secure Settings -> Root Actions -> Wireless ADB -> Off
Плагин -> Secure Settings -> Dev Admin Actions -> Password/Pin -> Enabled
Профиль устанавливает настройки, противоположные профилю «Дома». Последний профиль «На работе/учебе»:
Контекст: Состояние -> Сеть -> Подключено к Wi-Fi-сети -> Имя сети
Задача:
Аудио -> Режим тишины -> Вибрация
Сеть -> Автосинхронизация -> Включить
Плагин -> Secure Settings -> System+ Actions -> GPS -> Off
Здесь включается вибрация вместо звонка, синхронизация остается включенной, GPS отключается. В некоторых из этих профилей (особенно в последнем) удобнее будет использовать ориентацию по сотовым вышкам. Для этого контекст достаточно заменить на «Место». Откроется карта, и на ней можно будет выбрать точное местоположения и радиус срабатывания контекста. Кнопку GPS внизу лучше выключить.
В маркете есть масса самых разных приложений для защиты от кражи смартфона. Ни в коем случае не буду настаивать на их удалении и замене на Tasker, а просто покажу, как повторить ту же функциональность с возможностью точно подогнать ее под собственные нужды. Сделать это очень легко. Вот простейший профиль.
Контекст: Телефон -> Получено текст. сообщение -> Тип: SMS, Отправитель: «+7...», Содержание: «locate»
Задача:
Плагин -> Secure Settings -> System+ Actions -> GPS -> On
Task -> Ждать -> 30 секунд
Разное -> Получить координаты -> Источник: любой
Телефон -> Отправить SMS -> Номер: «+7...», Сообщение: «Date: %DATE %TIME. Battery: %BATT. Location: %LOC»
При получении SMS с номера +7… с сообщением «locate» смартфон включит GPS, заснет на 30 секунд (чтобы смартфон смог найти спутники), получит координаты и отправит их на указанный номер в таком формате: «Date: дата время. Battery: процент заряда. Location: координаты». Для получения точного местоположения на карте координаты достаточно будет вбить в Google Maps.
[ad name=»Responbl»]
Обрати внимание, что для формирования SMS мы использовали переменные. Их устанавливает и обновляет сам Tasker, поэтому переменные можно использовать в любом текстовом поле внутри приложения. Кроме перечисленных здесь, существуют десятки других переменных, которые позволяют получить самую разную информацию, начиная от статуса Bluetooth и заканчивая текущей частотой работы процессора (их описание можно найти здесь).
Профиль можно расширить и модифицировать для отправки SMS каждые пять минут (для этого можно использовать действие «task -> for», реализующее цикл), включить блокировку смартфона с помощью пина, как показано в предыдущем примере, заставить смартфон позвонить на нужный номер (Телефон -> Позвонить), сделать снимок (Медиа -> Фотоснимок) и отправить его с помощью MMS (Телефон -> Создать SMS). При желании можно создать веб-приложение и общаться с ним с помощью HTTP POST и GET (Сеть -> HTTP Post)!
У Google есть превосходный анализатор голоса, который по умолчанию работает только в связке с Google Now. Но мы можем использовать его и для создания профилей для Tasker, получив возможность запускать нужные нам действия с помощью голоса. Для этого понадобится плагин AutoVoice стоимостью один доллар и совсем чуть-чуть смекалки. Простейший пример профиля с использованием AutoVoice будет таким:
Контекст: Состояние -> Плагин -> AutoVoice Recognized -> Event Behaviour: On, Command Filter: «Ответ на главный вопрос жизни»
Задача: Сигнал -> Экстренное сообщение -> Текст: «42»
Этот профиль сработает тогда, когда AutoVoice распознает фразу «Ответ на главный вопрос жизни». Чтобы запустить сам механизм распознавания, можно использовать виджет AutoVoice, который выводит на экран стандартный диалог «Говорите…» и по результатам распознавания запускает нужный профиль. Другой способ: создать новый профиль, который сработает, например, при разблокировке экрана и запустит действие «Плагин -> AutoVoice Recognize». В этом случае диалог будет выведен автоматически.
Еще более интересный способ использования AutoVoice — это механизм «постоянного распознавания», который работает все время, пока включен экран смартфона. В этом случае команды можно будет произносить когда угодно, и, если AutoVoice их распознает, автоматически сработает нужный профиль. Чтобы включить «постоянное распознавание», необходимо активировать доступ внешних приложений в настройках Tasker (Настройки -> Разное -> Разрешить внешний доступ), а затем включить в AutoVoice настройку «Continous -> Toggle Listener». Недостаток метода: постоянный обмен данными с Google (или необходимость переключения на offline-движок распознавания речи).
- AutoVoice зависит от приложения «Google Поиск» и без него работать отказывается.
- AutoVoice способен интегрироваться в Google Now. Чтобы заставить его сделать это, необходимо установить фреймворк Xposed и скачать Google Now API через настройки AutoVoice.
- Tasker можно связать с виджетом Minimalistic Text, чтобы выводить на него собственную информацию.
AutoRemote — еще один интересный плагин от автора AutoVoice. Он позволяет управлять смартфоном удаленно множеством разных способов, таких как веб-интерфейс, плагин для браузера, приложение для Windows/Linux, или с помощью другого смартфона на базе Android или iOS. С помощью AutoRemote можно создать профили, которые будут срабатывать при получении сигнала извне либо генерировать такой сигнал в результате какого-либо системного события. Две копии AutoRemote, установленные на разные устройства, позволят им обмениваться информацией в автоматическом режиме, в том числе с возможностью пересылки уведомлений, сообщений и активации определенных функций на одном смартфоне в ответ на событие на другом.
[ad name=»Responbl»]
Сразу предупрежу, что стоимость плагина составляет четыре доллара, однако в маркете есть и бесплатная версия, единственное ограничение которой — длина команд до двух символов. В большинстве случаев этого будет вполне достаточно для отдачи таких команд, как «Отключить смартфон» или «Получить координаты» (для этого и одного символа хватит), но в случае реализации возможности пересылки уведомлений, получения со смартфона информации и организации чего-то вроде чата придется раскошелиться.
Как и плагин из предыдущего раздела, AutoRemote — это еще и полноценное приложение. После его запуска на экране появится ссылка и QR-код. Ссылку можно открыть в браузере, чтобы получить доступ к веб-интерфейсу управления смартфоном, а QR-код отсканировать другим смартфоном c установленным AutoRemote и связать два гаджета в сеть. Далее AutoRemote можно начинать использовать в своих профилях.
Для примера соединим с помощью AutoRemote планшет (имя в AutoRemote: tablet) и телефон (имя: phone) и создадим набор профилей, с помощью которых смартфон будет сообщать планшету, что он получил SMS. На смартфоне создаем такой профиль:
Контекст: Событие -> Телефон -> Получено текстовое сообщение
Задача: Плагин -> AutoRemote Message -> Device: "tablet", Message: "ss"
На планшете:
Контекст: Состояние -> Плагин -> AutoRemote -> Event Behaviour: On, Message Filter: "ss"
Задача: Сигнал -> Уведомление -> Название: "SMS", Текст: "Получено SMS"
Теперь, когда на смартфон придет SMS, на планшете появится уведомление. Имея полную версию AutoRemote, профили можно расширить, включив в отправляемое сообщение информацию об отправителе и текст сообщения (переменные %SMSRF и %SMSRB).
Tasker делает смартфон по-настоящему умным устройством. С помощью него и множества плагинов можно запрограммировать практически любой аспект работы устройства. Показанные в статье примеры лишь малая часть того айсберга, который скрывается за простым и приятным пользовательским интерфейсом.
Ссылки:
Чтобы взломать сеть Wi-Fi с помощью Kali Linux, вам нужна беспроводная карта, поддерживающая режим мониторинга…
Работа с консолью считается более эффективной, чем работа с графическим интерфейсом по нескольким причинам.Во-первых, ввод…
Конечно, вы также можете приобрести подписку на соответствующую услугу, но наличие SSH-доступа к компьютеру с…
С тех пор как ChatGPT вышел на арену, возросла потребность в поддержке чата на базе…
Если вы когда-нибудь окажетесь в ситуации, когда вам нужно взглянуть на спектр беспроводной связи, будь…
Elastic Security стремится превзойти противников в инновациях и обеспечить защиту от новейших технологий злоумышленников. В…
View Comments