Как сделать простейшую батарейку

Nomad14

Сообщение #1

09.06.10, 10:06

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 234
Регистрация: 22.05.08
Xiaomi MiPad

Репутация: -  29  +


Tasker
версия: 5.0u3 (stable)

Последнее обновление программы в шапке: 27.07.2017

Прикрепленное изображение

ЧаВо | КУРСЫ | БИБЛИОТЕКА | PLUGINs | ХИТРОСТИ | ПРИМЕРЫ


Скриншоты

Ветка 4.x
Прикрепленное изображение Прикрепленное изображение Прикрепленное изображение

Ветка 1.x

Прикрепленное изображение Прикрепленное изображение
Краткое описание:
Выполнение действий по событиям.
Описание:
Продвинутый планировщик. Позволяет по разным событиям производить собственные действия.
Похож на Locale , Llama , Automagic , AutomateIt , MacroDroid , E-Robot , Automate — automatic tasks , EasyProfiles , Dessin , Atooma , Swip только намного более мощный. Есть возможность создавать виджеты с произвольным списком действий.
Альтернативное описание:
Проблемно-ориентированный язык сценариев, позволяющий программировать в Андроид без знания каких-либо языков программирования и без навыков программирования вообще.

Домашняя страница: http://tasker.dinglisch.net/
Google Play: https://play.google.co…glisch.android.taskerm

Скачать стабильную (stable) версию для Андроидов ≥ 5.0:
версии 5.0u3, 5.0u3m Tasker (Пост Alex0047 #63563401)
Официальная история изменений

пояснения по буквам в номерах версий

m - версия для Google Play, работает без проверки лицензии, т.е ломать её не нужно.
(Версия без индекса m также является официальной, обладает тем же самым функционалом, что и версия для Google Play, но дополнительно поддерживаются функции шифрования. Версия без индекса m - не ломаная, не привязанная к Google Play, т.е. ее необходимо "ломать" - метод "получения" регистрации (если вылетает при попытке ввести код, пробуем эту версию)
u - update, обновление стабильной официальной версии, в котором нет ничего нового, только исправление ошибок. Буква u и номер после нее считаются частью номера версии.
b - beta. Бета-версии в данной ветке не обсуждаются, их поддержкой и ответами-советами занимается непосредственно разработчик, но он тут не появляется!
Иногда могут выходить тестовые (test или prerelease) версии будущих стабильных официальных версий. Они, обычно, имеют суффикс u, для них действуют те же правила, что и для бета-версий (каковыми, по сути, они и являются).

Примеры:
Версия 4.3m - стабильная версия для Google Play.
Версия 4.3u4m - стабильная версия для Google Play, по сравнению с 4.3m ничего нового в ней нет, однако, исправлены ошибки.
Версия 4.3b4m - beta-версия будущей версии 4.4 (или 4.3u) для Google Play, сделана на базе версии 4.3
Версия 4.3u2b2m - такой версии быть не может, beta-версии не делаются на базе обновлений (версий с индексом u).

Скачать версию для Андроидов 4.x

версии 4.9u4, 4.9u4m Tasker (Пост Alex0047 #57263470)
Официальная история изменений
плагин App Factory версия для Tasker 4.9u4 с оф.сайта

Скачать версию для Андроидов < 4.0

версия: 1.6u2m
Прикрепленный файлTasker_1.6u2m.apk ( 1,34 МБ )
(чистая не ломаная версия с маркета)
версия: 1.6u2
Прикрепленный файлTasker.1.6u2.apk ( 1,34 МБ )
(версия с поддержкой шифрования)
метод "получения" регистрации (не маркет версия) (если вылетает при попытке ввести код, пробуем эту версию)

Доступен неофициальный перевод на русский для версий 1.6u2m, 1.6u2 Tasker (Пост Барабан #38518964)
(в программе присутствует сильно устаревшая русская локализация, см. примечание к п.3 правил темы ниже)

ЧаВо | КУРСЫ | БИБЛИОТЕКА | PLUGINs | ХИТРОСТИ | ПРИМЕРЫ


ВНИМАНИЕ!!! Правила темы. Рекомендуется внимательно прочитать.

1. Данная тема придерживается Правил форума, просим всех соблюдать их. Разумеется, в теме действуют и Правила раздела, в частности:
1.1. Все картинки в сообщениях должны быть спрятаны под спойлер.
Замечание: Данная тема не является строго модерируемой, сообщения, нарушающие правила не будут незамедлительно удаляться. Однако, известно, что некоторые участники темы игнорируют сообщения с нарушениями, поэтому Вы рискуете не получить ответ на свой насущный вопрос или получить неполный ответ на него. И еще неизвестно, что хуже.
2. Если у вас нет времени или желания читать все страницы темы, то для начала воспользуйтесь функцией поиска в теме (п. 4.4 Правил форума). Почти всегда вы найдете либо четкий ответ, либо направление, в котором нужно двигаться дальше. Направление разумней уточнить, задав вопрос в теме. В сообщении с вопросом лучше указать, что вы искали, что нашли, что из найденного прочитали, что из прочитанного поняли.
3. Даже для реализации простейших задач желательно обладать хотя бы начальными навыками и понятиями, связанными с программированием (пусть даже очень поверхностными, на школьном уровне).
Замечание: Но если не обладаете, но очень хочется реализовать что-нибудь, можно и не обладать. Даже начальными. Совсем.
Важное замечание: Предпочтительнее использовать английскую локализацию в Tasker (т.е англоязычный Tasker), русская локализация местами может вас запутать, повести по ложному пути, заставить рвать волосы там где они у вас еще есть и т.д. Пример "русской" локализации.
4. Новичкам рекомендуется начинать с местных курсов, местных готовых решений, не вредно заглянуть и в местную библиотеку.
5. Задав вопрос и получив "невнятный", как вам кажется, ответ, прочтите его еще раз. Данная тема - это вполне самодостаточный и своеобразный организм. Как правило, в каждом ответе содержатся слова-"якоря", зацепив которые в "поиск", Вы найдете достаточное количество ответов, а иногда и 100% готовые решения.
Заметка - краткое практическое руководство по поиску в теме по словам-якорям: "как и что искать в теме".
6. Четко сформулированный вопрос со всеми-всеми-всеми нюансами увеличивает шансы оперативно получить ответ. Информация никогда не бывает лишней.
Замечания:
- Сообщение из одного предложения расценивается завсегдатаями, как приглашение поговорить о погоде. А поскольку здесь это - отклонение от темы, в ответ вы, вероятней всего, получите предложение ознакомиться с данными правилами.
- Сообщение из одной фразы "пробовал, не получилось", означает, что пробовали с вынутой из аппарата батарейкой, экран был черным, ничего не получилось.
7. Если у вас не получается самому написать профиль, и вы хотите обратиться в тему за помощью, то:
- максимально подробно опишите задачу, которую Вы хотите решить, и свою проблему, т.е. что именно не получается. У разных людей не получается по-разному, знаете ли.
- обязательно выложите то, что уже получилось, в формате Description Таскера (см. ЧаВо, вопрос 10). Это "то" не обязательно должно иметь хоть какое-то отношение к вопросу. Мы должны знать, как минимум, степень вашего знакомства с Таскером и уровень ваших навыков в программировании. В противном случае рискуете получить ответ, который не сумеете понять. Да, если совсем ничего пока не получилось, значит и профиль вы написать не хотите. Если немного подумаете, то согласитесь с последним утверждением.
8. Если вы хотите поделится своим решением, оформите его в соответствии с ЧаВо, вопрос 9.

Возможности

Список основных событий и состояний

- запуск и завершение работы приложения, включая отслеживание активности сервисов приложений
- запуск выбранной activity приложения (долгий тап на имени приложения в списке выбора приложений для контекста Application)
- запрос пользователем помощи в приложении или в системе

- наступление определенного времени и/или даты, а также дня, недели, месяца, дня месяца или недели, дня месяца или недели, последнего дня месяца
- наступление и окончание определенного периода времени
- наступление и окончание события в календаре, будильнике

- вход в географическую зону (определяемую с помощью GPS или по сотовым вышкам и точкам доступа WIFI) и выход из нее
- подключение аппарата к определенной сотовой вышке (из заданного списка вышек)
- установление и разрыв соединения в определенном режиме мобильной передачи данных: 2G, 3G, 4G и других
- достижение и потеря определенного уровня приема сигнала сотовой сети
- обнаружение определенной (или любой) точки доступа WIFI, подключение к ней и отключение от нее
- включение и выключение режима "в самолёте"
- включение и выключение адаптеров Bluetooth, NFC и WIFI
- подключение к сети Ethernet и отключение от нее

- события аппаратной клавиатуры (открыта-выдвинута/закрыта-задвинута)
- нажатие некоторых аппаратных клавиш, в том числе расположенных на наушниках (проводных или беспроводных)
- нажатие на программные кнопки и некоторые другие элементы пользовательского интерфейса Андроида и сторонних программ

- входящий или исходящий звонок, ответ на входящий, завершение разговора
- получение СМС (MMS)
- успешная отправка СМС (MMS) и ошибка при его отправке
- пропущенный звонок, СМС (MMS)

- события от различных встроенных датчиков (освещенности, приближения к объекту, ориентации, перемещения, магнитного поля, давления, температуры, влажности, шагомера)
- подключение и отключение зарядного устройства (проводного, беспроводного, питания от шины USB)
- достижение определенного уровня заряда батареи, разрядка батареи ниже определенного уровня, изменение уровня заряда батареи
- включение и выключение заставки экрана (Android Daydream)
- подключение к компьютеру по шине USB и отключение от него
- подключение к аппарату устройств USB и их отключение
- подключение и отключение SD карты

- окончание загрузки Андроида и начало выключения аппарата
- включение и выключение экрана, разблокирование экрана
- старт и завершение пользовательской сессии
- создание, изменение и удаление файла на SD карте
- подключение и отключение проводных или беспроводных наушников, устройств Bluetooth и USB
- подключение к автомобильной или настольной док-станции, телевизору, часам и отключение от них

- пространственное перемещение аппарата заданным определенным образом - жест
- встряхивание аппарата

- наступление определенного системного события в Андроиде - прием интента (intent)
- изменение системной даты, времени, часового пояса
- добавление, обновление и удаление приложения
- возникновение определенного или любого окна (обыкновенного, всплывающего, диалогового)
- появление уведомления от приложения в системной панели уведомлений и выбор пользователем такого уведомления


Список основных действий

- управление режимом "в автомобиле"
- управление режимом "в самолете", в т.ч. выборочное отключение радиомодулей

- регулировка громкости, в т.ч. отдельных потоков: звонка, сигнала тонального набора (DTMF), разговора по телефону, в т.ч. через bluetooth-гарнитуру, будильника, мелодий, уведомлений
- управление проигрыванием рингтонов и вибрацией при входящих звонках

- ответ на входящий звонок ("поднять трубку")
- управление беззвучным режимом
- управление настройками экрана: яркостью, в т.ч. режимом автоматической яркости, ориентацией, длительностью периода бездействия до блокировки, в т.ч. при наличии зарядки
-получение информации о характеристиках экрана: размеры экрана, его разрешение, текущая настройка автоматической ориентации

- установка обоев на главном экране
- управление блокировкой экрана: включение и выключение блокировки, в т.ч. принудительное включение блокировки
- управление режимом автосинхронизации
- управление режимом звукового сопровождения нажатий на аппаратные и программные кнопки, режимом тактильной навигации (haptic feedback)
- управление светодиодами, в т.ч. режимом светодиодной подсветки при выводе уведомлений Андроидом и сторонними приложениями
- управление ночным режимом

- включение и выключение адаптеров Bluetooth, NFC, WIFI, WiMax, GPS, сети мобильной связи, в т. ч. управление режимами передачи данных в сети мобильной связи
- получение информации о сетевом подключении (тип подключения, наличие доступа к мобильной передаче данных), о параметрах сети WIFI (MAC-адрес адаптера, уровень сигнала, имя точки доступа), Bluetooth, Ethernet
- установка имени устройства в сети bluetooth
- включение и выключение различных режимов передачи данных через NFC, в т.ч. Android Beam и NFC Payment

- [root] эмуляция нажатий на кнопки в т.ч. и несуществующие на аппарате, например, эмуляция джойстика - "универсальная кувалда", которой делается практически все
- [root] эмуляция ввода текста
- захват в исключительное использование некоторых аппаратных кнопок
- закрытие системных диалогов
- вставка события в календарь
- получение информации о записях в календаре

- звонок на определённый номер
- управление исходящими звонками на определенные номера: блокировка звонков и их переадресация
- создание писем, СМС и MMS
- отправка СМС
- получение информации о контактах в телефонной книге

- загрузка ссылки в браузере
- запуск приложений, в т.ч. журнала звонков, контактов (с выбором определенных контактов), карт (с выбором определенного местоположения), диалога выбора языка ввода, приложений, обеспечивающих разделение интернет-трафика по шине USB и по WIFI (tether)
- получение информации об установленных приложениях и компонентах приложений (activities, сервисах, ресиверах)
- управление панелью уведомлений: ее вывод и сворачивание
- управление режимом Interrupt Mode
- добавление нового будильника
- запуск системного секундомера
- выбор приложения СМС по-умолчанию
- принудительное завершение приложений
- управление музыкальным проигрывателем, в т.ч. встроенным, в т.ч. формирование списка воспроизведения
- проигрывание аудиофайлов, встроенных рингтонов в т.ч. с выбором звукового потока
- получение информации об аудиофайлах: название, исполнитель, время воспроизведения
- активирование вибрации, в т.ч. по заданному шаблону
- управление встроенным микрофоном, в т.ч. запись звука с него
- операции с каталогами и файлами: создание, копирование, перемещение, чтение (получение списка файлов в случае каталогов), проверка существования файла, чтение атрибутов файла: размера, прав доступа, времени модификации, запись, удаление, архивирование в zip архив, извлечение из zip архива, шифрование и расшифровка)
- работа с изображениями: изменение размеров, обрезка, поворот, применение фильтра

- настройка рингтонов по умолчанию для звонков, будильника, уведомлений
- определение текущего местоположения (по GPS или по сотовым вышкам и точкам доступа WIFI)
- подключение к сети Ethernet и отключение от нее
- вывод сообщений, обыкновенных и всплывающих диалогов, меню, списков (в действительности, возможно построение произвольных графических пользовательских интерфейсов посредством сцен
- вывод уведомлений в панель уведомлений, в т.ч. сопровождаемых светодиодной подсветкой или звуковыми извещениями, вибрацией
- отмена собственных уведомлений
- распознавание и синтез речи
- переход на домашний экран, в т.ч. с определенным номером
- получение идентификатора текущего пользователя

- работа с web-серверами: получение и отправка содержимого, не обязательно в формате html
- запуск сценариев на shell, javascript, SL4A
- использование конструкций языкa Java и вызов функций языка Java и Андроида (через механизм Java reflection)
- [root] экстренные перезагрузка и выключение аппарата
- [root] перемонтирование разделов на внутренней или внешней карте памяти
- запуск принудительного сканирования системой SD карты
- отправка произвольного системного события - интента (intent)
- добавление содержимого в буфер обмена
- фотосъемка
- управление фотовспышкой
- операторы для организации управления в программах: создание и изменение переменных, массивов, оператор если-то-иначе, циклы, вызов подпрограмм (в действительности, даже сопрограмм), математические функции, поиск и замена по шаблону, в т.ч. с использованием регулярных выражений

Оба этих списка далеко не полны. Во-первых, набор событий и действий Таскера может быть расширен за счет подключения сторонних плагинов, тысячи их. Во-вторых, используя эмуляцию аппаратных и программных клавиш или запуская скрипты на шелл и SL4A можно выполнить практически любое действие. А кроме того, есть еще прием и посылка интентов. А если научиться вызывать функции языка Java, можно получить абсолютную власть над своим аппаратом.
Сцены, краткое описание

ЧАсто задаваемые ВОпросы

ˇˇ
1. Не могу установить Tasker, что мне делать?
Вы устанавливаете версию Tasker ниже 4.5, и у вас в прошивке отсутствует библиотека Google Maps Android API, т.е. файлы com.google.android.maps.jar и com.google.android.maps.xml. Их можно найти в данной ветке, воспользовавшись поиском, либо поискать в прошивках для вашего устройства. Пара рецептов: Tasker (Пост пионер2010 #15274629) и Tasker (Пост coolkaas #19016305).
ˇ
2. Как импортировать проект/профиль/задачу?
Для импортирования используется "долгий тап" на соответствующих вкладках: profiles/tasks/projects (домик).
ˇ
3. Для работы Tasker нужны рут-права (root)?
- Некоторые действия Tasker требуют рут-прав, часть профилей, выложенных здесь, в разделе МРП, требуют рут-прав.
- Часть действий (например, действие System Lock - заблокировать устройство) требуют, чтобы Tasker был установлен администратором устройства.
- Иногда (например, событие New Window) требуется, чтобы служба Tasker была включена в специальных возможностях.
- Также (например, для события Notification), будет необходимо, чтобы для Tasker был разрешен доступ к уведомлениям сторонних приложений.
Несколько примеров подобных специальных настроек Tasker (Пост just@man #50495922).
ˇ
4. Половину функций озвученных в данной ветке не могу найти в своей версии Tasker, многие функции выделены красным цветом (недоступны), что я делаю не так?
- Таскер манипулирует большим набором контекстов и действий, чтобы их как-то упорядочить и распределить, интерфейс использует иерархическую структуру, например, категория App, действие Go Home. Такая же иерархическая структура используется для контекстов типа состояние и событие. К счастью, помнить категории для действий и контекстов не обязательно, в интерфейсе предусмотрено поле Filter, существенно облегчающее поиск, см. Tasker (Пост sergr59 #40051612). Кроме того, в интерфейсе повсеместно используется долгий тап (и на самих элементах, и на закладках), а также перетаскивание с удержанием. Интерфейсу посвящен раздел Main Screen оф.руководства. Для упрощения начального знакомства с Таскером по умолчанию выставлен режим для начинающих (Beginner mode), в котором недоступны некоторые возможности (элементы интерфейса), режим можно отключить в настройках Таскера.
- При обсуждении действий и контекстов в теме, обычно, используется английский интерфейс Таскера (см. Примечание к п.3 правил темы). Возможно, если переключить язык интерфейса в настройках Таскера, внезапно обнаружатся пропавшие функции.
- Большинство выделенных красным действий можно заменить плагинами, но, как правило, потребуется рут. (Например, действие GPS, недоступное сейчас на большинстве аппаратов, можно заменить действиями GPS Enabled/GPS Disabled плагина Secure Settings.) Необходимо понимать, что после установки плагина, действие не перестанет быть красным, однако в разделе плагинов появится действие с такой же функциональностью. Кроме того, специально для любителей покопаться в кишках системы в теме обсуждаются всевозможные рецепты, позволяющие добиться желаемого без установки плагинов, через прямое обращение к функциям Андроида. (Загляните в раздел "Маленькие спортивные хитрости", МСХ, если интересуетесь подобными рецептами. Например, МСХ 10 - аналог действия GPS для Андроидов 4.0+, МСХ 12 - замена действия Mobile Data 2G/3G. Еще один рецепт про GPS Tasker (Пост ivanius-1976 #16390085). Замена действия Mobile Data - МСХ 4 и Tasker (Пост Primorsky78 #37418838.)
Пожалуйста, не спрашивайте в теме, когда в Tasker вернут то или иное действие. Его не вернут никогда. Используйте плагины.
ˇ
5. Меня просят выложить Run Log и/или logcat, что это такое и как это получить?
См. маленькие спортивные хитрости, Тайны отладки.
ˇ
6. Возможно ли с помощью Tasker создать отдельное приложение, apk?
Да, возможно. Потребуется плагин Tasker App Factory (см. раздел plugins). Инструкции находятся в разделе App Creation оф.руководства.
ˇ
7. У меня есть мега идея, но я не собираюсь изучать Tasker, зато готов заплатить за её воплощение +100500 гуглионов $, к кому мне обратиться?
Лучше обратиться в тему Программы на заказ. Прайс-лист темы Tasker находится тут в конце поста, пункт 3.
ˇ
8. Чем отличается Tasker от других подобных программ?
Обычно, задачи в Таскере решаются намного проще, чем в других программах. Это достигается за счет двух присущих только Таскеру понятий: состояние и действие-настройка. Без этих понятий большинство элементарных задач либо не имеют решения вообще, либо решение оказывается крайне сложным.
Например, рассмотрим простейшую задачу:

включить беззвучный режим ночью (на совещании).


Остальные программы предлагают следующее решение:

событие: наступила ночь (совещание) -> включить беззвучный режим
событие: наступило утро (совещание окончилось) -> выключить беззвучный режим


Стоп! А почему, собственно, "выключить"? А если пришлось включить беззвучный режим раньше и надо оставить аппарат в этом режиме, а? Понятно, что нужно восстановить предыдущее значение режима. К сожалению, подавляющее большинство других программ не умеют этого делать. Таскер умеет. Вот профиль на Таскере:

состояние: Ночь (совещание)
задача: включить беззвучный режим

Все. Кажется, что профиль совсем неправильный? Где выключение режима? Его нет. Восстановлением режима займется сам Таскер: если при наступлении ночи (совещания) режим был беззвучный, Таскер его оставит беззвучным, если же звук был включен, Таскер выключит беззвучный режим.
Желающие могут попробовать сделать подобный профиль в другой программе. В принципе, профиль такого уровня еще можно реализовать на чем угодно, но придется попотеть.
Пример профиля, который реализовать вне Таскера практически невозможно - второй пример в сообщении
Кроме того, Таскер позволяет осуществить практически любую идею, поскольку позволяет создавать собственный пользовательский интерфейс (сцены), позволяет общаться с Андроидом напрямую и на его собственном языке (действие Java Function). Правда, почти всегда для осуществления идей требуется еще и понимание устройства Андроида.
ˇˇ
9. Мне с помощью Tasker удалось решить задачу, которая может спасти нашу Галактику от гибели, как мне поделиться решением?
В настоящее время нами утеряна связь с межгалактическим конгрессом, но мы готовы поделиться вашим решением с человечеством! Для этого Вам необходимо:
- выложить свое решение под спойлер в формате Description Таскера (см. ЧаВо, вопрос 10).
- ответить на возникшие вопросы по профилю, исправить найденные ошибки
- выложить окончательное решение под спойлер в формате Description Таскера.
Также Вы можете дополнительно выложить копию решения и в формате xml и/или в картинках, если хотите. Другими словами, формат - Description является обязательным, остальные форматы, включая формат xml, - желательными.
ˇˇ
10. Что такое формат Description Таскера? Что нужно сделать, чтобы получить мои проекты, профили, задачи, сцены в этом формате? Что за код, который встречается почти в каждом сообщении этой темы?
Формат Description Таскера - это текст с описанием (description) программы на Таскере. Выглядит примерно вот так:

задача в формате Description Таскера

Battery Line Width (68)
A1: Test Element [ Scene Name:Battery Bar Element:Background Test:Element Size Store Result In:%size ]
A2: Variable Split [ Name:%size Splitter:x Delete Base:On ]
A3: Variable Set [ Name:%size To:%size1 / 100 %BATT Do Maths:On Append:Off ]
A4: Element Position [ Scene Name:Battery Bar Element:Background Orientation:All X:0 Y:0 Animation Time (MS):100 ]
A5: Element Position [ Scene Name:Battery Bar Element:Line Orientation:All X:0 Y:0 Animation Time (MS):100 ]
A6: Element Size [ Scene Name:Battery Bar Element:Background Orientation:All Width:%size1 Height:3 Animation Time (MS):100 ]
A7: Element Size [ Scene Name:Battery Bar Element:Line Orientation:All Width:%size Height:2 Animation Time (MS):100 ]
A8: Perform Task [ Name:Battery Line Color Stop:Off Priority:5 Parameter 1 (%par1): Parameter 2 (%par2): Return Value Variable: ]

Как получить свои наработки в этом формате, словами объясняется тут, а наглядно - тут.
Подробное объяснение в картинках Tasker (Пост sergr59 #47858893).
Если Вы делали бэкапы профилей, то все Ваши профили в формате Description будут находиться в файле datadescr.txt (или, для Таскера версий
Импортировать формат Description в Таскер возможно только руками, т.е. набрав профиль по описанию. Для полноценного импорта предназначен формат xml.
Если Вы хотите задать вопрос или поделится своими наработками, то вместе с форматом Description рекомендуем также указать версию Андроида и наличие (отсутствие) root-прав.
ˇ
11. Правда, что в этой ветке присутствуют телепаты, которые могут дать четкий ответ на не полностью сформулированный вопрос?
Нет! К сожалению два наших телепата исчезли бесследно, а третий ушел в отпуск, но до настоящего момента так и не вернулся (мы все таки надеемся, что он не пропал и обязательно известим всех когда он вернется)
Все наши телепаты нашлись и открыли свою ветку! Все вопросы задаем там!
ˇ
12. Посмотрев на статистику использования памяти, я увидел, что Таскер занял 100/50/20 Мбайт оперативной памяти. Считаю, что это слишком много. Можно ли как-то урезать аппетиты Таскера?
- (краткий ответ) Можно. Выйдите из окна редактирования профилей.
- (развернутый ответ) Таскер состоит из двух неравных частей:
- собственно приложение Таскер, которое реализует функции редактирования профилей и их отладки, содержит меню настроек и встроенную справку и т. п.;
- сервис, следящий за контекстами и реализующий очередь выполнения задач и действий.
Первой части действительно требуется существенный объем оперативной памяти для работы. Однако, как только Вы закончите редактировать свои профили и выйдете из приложения, от Таскера останется только сервис, который обычно требует не очень много памяти. Точная цифра зависит от используемых Вами контекстов и действий, но редко превышает пары мегабайт. Максимальный якобы наблюдаемый объем - 10 Мбайт.
Кроме того, нужно отдавать себе отчет, что цифры, рисуемые Андроидом для первой части Таскера, показывают среднюю температуру по больнице, давление на Северном полюсе, но никак не реально занимаемый объем оперативной памяти. Для понимания, откуда берутся такие цифры, рекомендую внимательно прочесть две заметки Дианы Хакборн (Dianne Hackborn), известного в узких кругах разработчика Андроида (А какая фамилия, а? Никакого ника не надо): ответ на вопрос How to discover memory usage of my application in Android и Process Stats: Understanding How Your App Uses RAM
Поскольку Таскер всего лишь прослойка к функциям Андроида, то он разделяет память с Андроидом (из-за используемой в Андроиде метрики PSS для подсчета объема оперативной памяти), а поскольку Таскер - прослойка ко многим функциям, то и память разделяется практически со всем Андроидом. Отсюда и большие цифры для первой части Таскера: Андроид просто приписал половину объема занимаемой им памяти Таскеру.
В тот момент, когда от Таскера остается только сервис (а это большая часть времени), используются только необходимые профилям и задачам функции Андроида - объем используемой Таскером памяти якобы сокращается. Но мы-то понимаем, что в действительности ничего никуда не делось, просто Андроид перестал приписывать Таскеру свою память.
Из всего этого можно сделать следующий вывод: метрика PSS в случае Таскера не совсем корректна. Да, это так. Однако идеальной метрики не существует в принципе, а в случае подавляющего числа приложений использование метрики PSS - достаточно разумное решение.
ˇ
13. Посмотрев на статистику энергопотребления, я с удивлением обнаружил, что Таскер постоянно чем-то занят, он использует 90%/50%/10% процессорного времени/батареи. Считаю, что это слишком много. Можно ли как-то урезать аппетиты Таскера?
Можно, задумайтесь над тем, что именно делают Ваши профили.
Следует четко уяснить, Таскер сам по себе процессор не занимает, батарею не разряжает. Это все делают написанные пользователем профили. В официальном руководстве есть специальные разделы Power Usage и Location Without Tears (как удачно в свое время перевел v-oz, «позиционирование без геморроя»), посвященные методам по снижению энергопотребления. Если их внимательно почитать, станет ясно, что, например, контексты Orientation или Proximity или Location с GPS использовать поодиночке в профилях не стоит. Если Вам, конечно, дорога Ваша батарея. Нужно дополнительно задать контексты типа Time, Call, Variable Value и т. п.
Иногда пользователи после активных экспериментов с Таскером и долгой отладки задач забывают остановить задачи, запущенные вручную. В результате задача тихо крутится в цикле, а в переменной %TRUN ее нет (т. к. таким задачам зачастую ленятся давать имена). И обнаружить ее можно, только включив лог отладки в Таскере.
Отсюда совет: всегда останавливайте очередь выполнения задач после экспериментов.
ˇ
14. У меня Tasker не видит root, что делать?
Варианты решения: офф.FAQ, переводы Tasker (Пост Nukri #52499605) и Tasker (Пост axbat #52501154) (равноценные, читайте любой на выбор), практический рецепт.
ˇ
15. На моем Андроиде Tasker работает ненадежно: не активирует контексты, пропускает действия. Что делать?
- Варианты решения для Андроидов 5.0+ содержатся в разделе Android System Power Management оф.руководства, перевод Tasker (Пост axbat #52499606). Некоторые производители баловались подобными вещами и ранее, например, Tasker (Пост sergr59 #38359613). Пользователям MIUI придется повозиться еще больше - Tasker (Пост earth77 #55617867).
- Контексту WIFI Near (переменной %WIFII) для корректной работы на Андроидах 6.0+ требуется включить сервисы местоположения, см. Tasker (Пост Demon72 #59472287).

Местные курсы

ˇ
1. Курс молодого бойца (для новичков)
Краткое содержание:
- основные понятия Таскера: действие, задача, контекст, профиль;
- чем отличается контекст-состояние от контекста-события;
- что такое действие-настройка;
- несколько контекстов в одном профиле;
- входная и выходная задачи профиля.

2. Tasker: практическое руководство
Краткое содержание:
- простые профили;
- переменные;
- сравнение по шаблону;
- математические действия;
- циклы;
- массивы переменных.

3. Основы сценического мастерства
Краткое содержание:
- что такое сцена;
- создаем сцену;
- как согласовать дизайн сцены с интерфейсом Android.

Местная библиотека, коллекция видеоуроков

Краткий англо-русский словарик темы

task - задача
action - действие
setting - действие-настройка (используется крайне редко, а сам русскоязычный термин не совсем удачный)
context - контекст
state - состояние, подразумевается контекст, т.е. context state - [контекст] состояние
event - событие, то же самое замечание, что и для state
profile - профиль (если профиль содержит ровно один контекст, то иногда термин "профиль" может означать контекст и наоборот. И к русскому языку это никакого отношения не имеет.)
project - проект, набор профилей, сгруппированных вместе
scene - сцена
scene element - элемент сцены
description - здесь, в этой теме, формат Description Таскера (см. ЧаВо, вопрос 10)
JS - действия JavaScript, JavaScriptlet, а также язык JavaScript в целом
JF - действия Java Function, Java Object, а также язык Java и Android API в целом

Plug-ins - плагины для Таскера

ˇ
- Secure Settings, тема на форуме (не рекомендуется установка ломаных PRO версий) - управление системными настройками Андроида, местами дублирует функции самого Tasker, но часть функционала позволяет намного расширить его возможности [Root]
- TaskKill Tasker Plugin - остановка приложений [Root]
- WhatsTasker - дружим Tasker с Whatsapp
- Locale SendSilentMail Plug-In версия 4.52 - отправка email (альтернативное решение на SL4A), похожий плагин - Email Me Pro (скачать)

предыдущие версии Locale SendSilentMail Plug-In

неизвестная версия


- Tasker App Factory - позволяет создать из проекта в Tasker полноценное приложение (.apk), версия для Tasker 5.0u3 с оф.сайта
- Weather ACE Tasker Plugin - прогноз погоды через приложение Weather ACE, пояснение от автора приложения
- SSH Tasker Plugin - интеграция клиента протокола SSH в Таскер
- Adaptive remote control - управление PC
- Tasker Now - взаимодействие Tasker с Google Now
- Material Design Tasker Plugin версия 6.1 - создаём свой UI в стиле Material Design

предыдущие версии Material Design Tasker Plugin

версия 2.0


- Snackbar Tasker Plugin версия 10.0 - создаем свои элементы интерфейса типа Snackbar, Bottom bar и Bottom sheet

предыдущие версии Snackbar Tasker Plugin

версия 6.5.1


- RESTask for Tasker - поддержка RESTful APIs (GET, POST, PUT, DELETE).
- Большой список плагинов и поддерживаемых приложений на оф.сайте.
- часть модулей Xposed также имеет интеграцию с Tasker (тема форума с коллекцией модулей Xposed)

auto-плагины от joaomgcd (оф.сайт) :


- AutoAlarm версия 1.0.25 - продвинутый аналог события Alarm Clock.
- AutoCast версия 1.0.25 - дружим Таскер с Chromecast.

предыдущие версии AutoCast

версия 1.0.21


- AutoContacts версия 1.1.13 - чтение и поиск контактов
- AutoInput версия 2.0 - эмулирует события пользовательского интерфейса, например, проигрывает заранее подготовленные действия нажатий на экран в определенных областях; также позволяет задать реакцию на события в пользовательском интерфейсе и извлечь содержимое элементов пользовательского интерфейса; намного более продвинутый аналог Frep.

предыдущие версии AutoInput

версия 1.0.9b
версия 1.0.3b


- AutoLaunch версия 1.0.24 - динамический запуск приложений.

предыдущие версии AutoLaunch

версия 1.0.11


- AutoNotification версия 2.5.34 - расширяет контексты и действия Notification (уведомления)
- AutoPebble версия 1.0.31) - дружим Tasker с Pebble

предыдущие версии AutoPebble

версия неизвестна


- AutoRemote версия 3.0.43b92 - удаленное управление устройствами и ББ, как через интернет, так и через bluetooth (можно подружить и заставить общаться Таскеры между собой)
- AutoShare версия 2.0.37 - встраиваем Таскер в системное меню Share

предыдущие версии AutoShare

версия 2.0.36
версия 2.0.23b, beta


- AutoTools версия 2.0 - комбайн из разнообразных действий, неподдающихся краткому перечислению, см. AutoTools Guide.
- AutoVoice версия 3.0.1 - голосовое управление

плагины для построения своих виджетов:


- Zoom (от автора Таскера)
- zoom - русифицированная версия
- Minimalistic Text
- Ultimate custom widget (UCCW)
- Zooper Widget Pro, тема на форуме

Tasker & Lollipop (Аndroid 5):


- Toggle Network Type 5.0, тема на форуме - переключение предпочитаемого типа сети, например 2G/3G [Root]
- Toggle data 5.0, тема на форуме - управление мобильной передачей данных [Root]

МРП - местные решения (примеры)

ˇ
myxa781 @ 14.05.2015, 08:47

примеры приведенные в шапке собраны не для того, чтобы их просто копировать (хотя это возможно, т.к все они (или почти) работоспособны), а чтобы на них разобраться и понять, что в принципе сложного ничего нет.


Прикрепленное изображениепростые профили для новичков
1. Виджет включения/отключения автояркости

If %Bright = 0
Auto Brightness set On
Variable Set name %Bright to 1
Else
AutoBrightness set Off
Display Brightness Level 3
Variable Set name %Bright to 0
EndIf
Flash Text %Bright (это для контроля во время отладки, можно удалить)


и создать виджет или ярлык Таскера, привязав к нему задачу.
Код можно сократить на два действия, воспользовавшись действием Variable Add с параметром Wrap Around

If %Bright = 0
Auto Brightness set On
Else
AutoBrightness set Off
Display Brightness Level 3
EndIf
Variable Add name %Bright value 1 wrap around 2 ]
Flash Text %Bright (это для контроля во время отладки, можно удалить)


2. Выполнение действий по расписанию (контекст Time Таскера)
2.1. Подлючение к домашней WiFi сети и синхронизация данных Tasker (Пост brake #5066785)
2.2. Переключение SIM. Постановка: Tasker (Пост dimonsob #33970409). Решение: Tasker (Пост gavrila #33974305)
2.3. Включение WIFI. Постановка: Tasker (Пост kolik76_76 #35332544). Решение: Tasker (Пост sergr59 #35332785)
2.4. См. пример 16 ниже
3. Уведомление о полном заряде аккумулятора Tasker (Пост sumoto #6268990)
4. Вывод активных профилей на рабочий стол с помощью Minimalistic Text Tasker (Пост LANstalker #7008782)
5. Отключить экран, когда телефон кладется на стол экраном вниз Tasker (Пост roly #7379740) (используется приложение Screen Off and Lock)
Примечание. Приложение Screen Off and Lock использовать не обязательно. Сейчас у Таскера уже есть действие System Lock.
6. Управление встряхиванием (событие Shake Таскера)
6.1. Сброс входящего встряхиванием и перезвон. Постановка: Tasker (Пост SkrommmnjagA #13261456) Решение: Tasker (Пост MOPOK #13271364)
6.2. Скриншот встряхиванием Tasker (Пост Nukri #33921486)
7. Автоматическое управление WiFi Tasker (Пост rjlexx #33556843)
8. Перезвон на последний входящий номер Tasker (Пост skunsofob #9357433)
9. Напоминание звуком о пропущенных звонках и СМС каждые 3 минуты Tasker (Пост intro555 #30478905) (См. также пример 19 ниже.)
10. Выполнение действий с задержкой - методика отложенного запуска (см. маленькие спортивные хитрости №6)
10.1 Выключение Bluetooth, если нет соединения в течение 3 минут Tasker (Tasker (Пост VityaPda #15433144)
10.2. Авоотключение Bluetooth через 1 минуту Tasker (Пост rjlexx #33387106) или Tasker (Пост VityaPda #33387312). Обсуждение (в том числе и ссылки на другие решения): Tasker (Пост username11 #33388672).
10.3 Блокировка экрана по датчику приближения с задержкой Tasker (Пост slax #37063616). См. также профиль 5.
10.4. Набор профилей, выполняющихся после выключения экрана с задержкой: перевести мобильную сеть в режим 2G Only, отключить WIFI, если были подключены к конкретной AP, отключить WIFI вне зоны действия AP Tasker (Пост dimusische #38434559)
11. Выключение GPS, WiFi, передачи мобильных даных и точки доступа через USB при выключении экрана (Tasker (Пост taganrog32 #15805624)
12. Задача "говорящие часы" на основе TTS Tasker (Пост Nukri #16482906), доработанный вариант Tasker (Пост Nukri #40811001), еще один вариант Tasker (Пост GigaMen #39665630)
13. Запуск приложения "Камера" с полной яркостью по кнопке "поиск" Tasker (Пост gameover19 #16813469)
14. Виджет включения/выключения приложения (на примере Cyberon Voice Commander) Tasker (Пост EvilShrike #17198021)
15. Проигрывание рингтона при входящих Tasker (Пост skunsofob #17329403)
16. Включение режима "в самолете" на ночь Tasker (Пост taganrog32 #17643467)
17. Фонарик, просто фонарик Tasker (Пост javerin #21687565) (см. также Java МРП 2)
18. Блокировка экрана при звонке с подключенной гарнитурой Tasker (Пост tvv56 #24317764)
19. Напоминание о пропущенных звонках и СМС Tasker (Пост tvv56 #24317911) (См. также пример 9 выше.)
20. Плавное увеличение громкости звонка Tasker (Пост tvv56 #25412353) Обсуждение Tasker (Пост tvv56 #25402750)
21. Уведомление при исчезновении сигнала сотовой сети Tasker (Пост gameover19 #28186341)
22. Выключение аппарата при достижении критического уровня зарядки в картинках Tasker (Пост coolkaas #24929040)
23. Автоматический ответ на звонок и громкая связь (см.упрощенный вариант) Tasker (Пост intro555 #44254063)
24. Голосовой запрос проверки счета. Постановка: Tasker (Пост Stimuliator #31750382). Решение (без использования плагинов): Tasker (Пост Nukri #31750978)
25. Голосовое управление с помощью плагина AutoVoice
25.1 Запуск приложения голосом Tasker (Пост rjlexx #33259309)
25.2 Управление авто с сигнализацией StarLine (с GSM модулем) Tasker (Пост Spider #48818745)
26. При подключении к домашней сети Wi-Fi отключить Bluetooth и блокировку экрана Tasker (Пост KlgFinn #36303973)
27. Вывод баланса карты на экран блокировки с помощью DashClock Widget Tasker Extension Tasker (Пост gavrila #39827385)
28. Управление устройствами с помощью плагина AutoRemote Tasker (Пост KlgFinn #55589289) (см. также сложное МРП 10).
29. Автоматизация функции быстрого звонка в Яндекс Браузере (используется плагин AutoNotification) Tasker (Пост lupuslol #59667358). Прикрепленное изображениепродвинутые профили
1.
2. Как отправлять e-mail из Tasker Tasker (Пост Oleg V #21581197) (альтернативный вариант см. раздел plugins)
3. Включение и блокировка экрана по датчику приближения Tasker (Tasker (Пост Remie-l #15007005)
4. Включение компьютера по WiFi с использованием Tasker (Пост j0ker #7649554) Wake On Lan (пример в картинках - Tasker (Пост j0ker #14247930) )
5. Alarm with Snooze Tasker (Пост sergiii #9754611)
6. Battery bar Tasker (Пост Nukri #15868156) и дополнение Tasker (Пост Calhoon #15929667)
7. Запуск и остановка сервиса DVGet при включении/отключении передачи данных Tasker (Пост Nukri #15874032)
8. Вывод потребляемого траффика поверх всех окон Tasker (Пост taganrog32 #17436431)
9. Блокировка включенного экрана во время разговора Tasker (Пост intro555 #31369886)
10. Определения местоположения устройства по удаленному запросу через плагин AutoRemote Tasker (Пост EasyWorld #31517883) (см. также простое МРП 28).
11. Отложенный запуск браузера с открытыми ссылками, пример использования массивов Tasker (Пост dimcus #21030010) Обсуждение Tasker (Пост dimcus #21022095)
12. Уведомление о пропущенных звонках с голосовым выводом имени контакта, от которого пропущен звонок Tasker (Пост keta22 #24770624)
13. Лог батарейки Tasker (Пост coolkaas #24951724)
14. Эмуляция автомагнитолы Tasker (Пост Arkkor #25973066)
15. Предварительное уведомление об исчерпании лимита бесплатных минут Tasker (Пост sergr59 #27804376)
16. Голосовой вывод прогноза погоды Tasker (Пост zurzmansor #34347212). Еще один вариант Tasker (Пост ajm #32677684) .Альтернативный вариант на базе Weather ACE Tasker (Пост Aleph4 #31856902). Еще вариант - Tasker (Пост ajm #34565142). И еще вариант - текущая погода с Intellicast.com (для виджета) Tasker (Пост Graymax #37077583)
17. Уведомление на какую симку/оператора входящий звонок на 2-симочном телефоне и о несоответствии операторов Tasker (Пост sergr59 #35207240)
18. Автоматический ответ на звонок и громкая связь Tasker (Пост intro555 #44254063)
19. Смена обоев рабочего стола (используется Java Script) Tasker (Пост EasyWorld #39600695) Прикрепленное изображениепрофили с Java
1. Получение адреса места по его координатам Tasker (Пост v-oz #39631433)
2. Фонарик Tasker (Пост slax #53903882)
И еще очень много профилей, пока не попавших в шапку, можно найти в теме, поискав по ключевой фразе java function.

Просьба к авторам изложенных решений. Не исправляйте профили (кроме опечаток) без предварительного уведомления и обсуждения в теме.

МСХ - маленькие спортивные хитрости

ˇ
1. Тайны отладки.
2. Перехват и эмуляция аппаратных клавиш, элементов пользовательского интерфейса:
Для эмуляции аппаратных клавиш и элементов пользовательского интерфейса в Таскере предусмотрены действия Button, Dpad, Type, контексты Assistance Request, Button Widget Clicked, Button:Camera, Button: Long Search и др. Их функционал ограничен, существенно более продвинутые функции доступны в плагинах AutoInput и AutoNotification (см. раздел plugins). С помощью этих плагинов возможно проэмулировать практически любое действие пользовательского интерфейса и перехватить практически любое его событие. Тем не менее, встречаются случаи, когда плагины бессильны, а во многих простых ситуациях плагины избыточны. В этой маленькой спортивной хитрости изложены альтернативные плагинам рецепты.
- методика эмуляции аппаратных клавиш через sendevent Tasker (Пост v-oz #12681202)
- методика перехвата аппаратных клавиш через getevent Tasker (Пост coolkaas #23702923)
- альтернативное решение для перехвата - модуль xposed additions pro
- методика эмуляции нажатий на экран через input tap Tasker (Пост gmorgen #33262026); с картинками - Tasker (Пост sergr59 #45647656)
- коды кнопок (из core/java/android/view/KeyEvent.java) для input keyevent Tasker (Пост username11 #21526131)
3. Ловим события в системном логе (logcat), применяя идеи МСХ 2, работать эти рецепты будут не у всех, их требуется слегка доработать под себя, уловив основную идею:
- собеседник поднял трубку (ответил на исходящий) Tasker (Пост dnsis #25551292)
- подсистема text-to-speech (tts) Андроида начала работать Tasker (Пост myxa781 #24101465) и Tasker (Пост myxa781 #24224417)
4. Немного информации о встроенной в Андроид утилите svc Tasker (Пост slax #53419279).
5. Дочерняя тема от coolkaas Скрипты на shell под Android, выросшая из МСХ 2. В теме обсуждается программирование на шелле (действие Run Shell Таскера). Краткий справочник по командам: Официальное руководство BusyBox (описание), вот один из примеров применения.
6. Отложенный запуск ˇ
Иногда требуется запустить задачу не в момент активации контекста, а немного позже. Для этого используется метод отложенного запуска: первым действием задачи ставим действие Wait, за которым следует действие Stop If с проверкой того, что условие запуска задачи все еще выполняются, обычно, это проверка активности профиля, но встречаются и другие варианты.

profile "Имя профиля"
context …
task
Wait время
Stop If условие запуска


Конечно, метод отложенного запуска можно использовать и для выходных задач.
Примеры использования метода: Tasker (Пост kefirux #23641303) и Tasker (Пост kefirux #23646121) и Tasker (Пост kefirux #23660085). Кроме того, профилям, использующим данный метод, посвящен п. 10 простых местных примеров.
Действие Stop с проверкой активности профиля делается так

Stop If %PACTIVE ,Имя профиля,


Обратите внимание на запятые, типичная ошибка новичка - забыть о них при проверке переменной %PACTIVE.
7. Объединение контекстов по ИЛИ Существуют три основных метода. В первом и самом простом используется свойство независимости задач от контекстов - задачу можно привязать к нескольким контекстам одновременно (это свойство Таскера подробно рассмотрено в "Курсе молодого бойца")
profile "Профиль1"
context state контекст А
task "Задача"

profile "Профиль2"
context state контекст B
task "Задача"


Недостатки этого метода:
- задача будет запускаться при активации каждого профиля;
- выходная задача, если она нужна, тоже будет запускаться при деактивации каждого профиля.
В целом, это, конечно, совсем не объединение контекстов по ИЛИ или ну очень частный случай такого объединения. Зато прекрасно работает в простейших ситуациях без заумных наворотов.
Второй метод основан на использовании переменной %PACTIVE и правила '/' в операторах сравнения:
profile "Профиль1"
context state контекст А
task
Stop

profile "Профиль2"
context state контекст B
task
Stop

profile "Профиль1 или Профиль2"
context state Variable Value %PACTIVE ,Профиль1,/,Профиль2,
enter task "Задача"
exit task "Выходная задача"


Данный метод наиболее точно объединяет контексты по ИЛИ. Заметьте, что выходная задача запустится, когда оба профиля деактивируются, что нам и требуется. Действительно, выходная задача должна запускаться при деактивации контекста, т.е. когда верно отрицание условия активации: НЕ (Профиль1 ИЛИ Профиль2). Воспользовавшись известной формулой булевой алгебры

НЕ (Профиль1 ИЛИ Профиль2) <=> (НЕ Профиль1) ИЛИ (НЕ Профиль2)


получим условие деактивации профиля "Профиль1 или Профиль2" в правой части формулы.
А применив отрицание к этой формуле, получим идею, лежащую в основе третьего метода

Профиль1 ИЛИ Профиль2 <=> НЕ (НЕ (Профиль1 ИЛИ Профиль2) ) <=> НЕ ( (НЕ Профиль1) И (НЕ Профиль2) )


В правой части мы видим стандартное объединение профилей по И. Чтобы получить те «НЕ», что внутри скобок, нужно задать отрицание для контекстов в профиле, у большинства контекстов Таскера для этого есть флаг Invert. Чтобы получить «НЕ» перед скобкой, необходимо сделать задачу выходной для профиля.

profile "Профиль1 или Профиль2"
context state Not контекст А
context state Not контекст B
exit task "Задача"
enter task "Выходная задача"


Недостатки этого метода:
- метод сложен, чтобы в него въехать, придется потрудиться
- настройки, изменяемые действиями-настройками в задаче "Задача", не сохраняются, поскольку задача является выходной
- по этой же причине настройки, изменяемые действиями-настройками в задаче "Выходная задача", восстанавливаются в задаче "Задача"
8. Корректное завершение работы (отключение питания) - Tasker (Пост myxa781 #30556899)
9. Cекреты %evtprm - Tasker (Пост Nukri #33317770)
10. Управление настройками местоположения (GPS / сеть): универсальный способ - управление виджетом Tasker (Пост ivanius-1976 #16390085); изменение настроек местоположения в поставщике контента (провайдере) settings Tasker (Пост intro555 #33627932) (ремарка про Андроид 6.0+ Tasker (Пост username11 #49966716))
11. Разбор (парсинг, parsing) текстовых данных, например, html-страниц.
- Основным инструментом для разбора текстовых данных является действие Variable Search Replace. Как следует из названия, оно позволяет искать по заданному шаблону в строке, а также заменять или извлекать части строки. Действие существенно опирается на понятие "регулярное выражение" (regular expression, regexp): раздел оф. руководства, раздел из Android API Reference, онлайн-тестер регулярных выражений. Примеры использования - простой МРП 27, сложные МРП 11 и 16.
- Поскольку разбор html-страниц регулярными выражениями - это путь Ктулху, рекомендуется использовать инструменты разбора, доступные в JavaScript и Андориде (через JS и JF Таскера). Наглядные примеры на JS: Tasker (Пост Graymax #43424823), Tasker (Пост BanHammer[YKT] #38500217). Урок Parsing XML Data из Training Guides for Android developers.
12. Механика service call в примерах
- переключение режимов сети 2G/3G/LTE (вызываем метод ITelephony.setPreferredNetworkType сервиса phone) Tasker (Пост Partyzzan #45844577)
- переключение аппаратного наложения, hardware composer (вызываем скрытый метод сервиса SurfaceFlinger, подробности - метод onTransact класса BnSurfaceComposer) Tasker (Пост Alexey711 #42782503)
Способ получения информации о методах сервисов через интерфейс Java Таскера - Tasker (Пост slax #48226914)
13. Работа с базами данных на примере базы данных СМС.
Общее замечание. С базами данных, точнее, с поставщиками контента (content providers) работают через встроенную в Андроид утилиту content (доступна для Андроида 4.1+). При этом надо знать адрес (authority) поставщика и структуру его базы данных. Если утилиты content в вашем Андроиде нет, или если надо предварительно понять структуру базы, используйте sqlite-шелл. Учтите, однако, что работа с базой на запись, минуя поставщика, может привести к ее разрушению. Везде ниже, кроме специально оговоренных случаев, подразумевается действие Run Shell Таскера. Предварительно, конечно, необходимо отладить работу с базой в командной строке. В принципе, для работы с базами данных и поставщиками контента в Таскере есть действие SQL Query, вот только использовать его, не зная структуры базы (поставщика), практически невозможно.
- используя утилиту content, пометить все СМС прочитанными, неотвеченные вызовы - просмотренными Tasker (Пост gavrila #44070856)
- используя sqlite-шелл, пометить все СМС прочитанными Tasker (Пост gavrila #43833031)
- удаление через sqlite-шелл СМС от определенного номера Tasker (Пост Havl #18737162)
- скрипты на SL4A python (действие Run SL4A Script Таскера): один помечает все СМС как прочитанные, другой удаляет отправленные на определенный номер СМС Tasker (Пост Havl #18852990)
Наконец, действия для работы с базой данных СМС существуют в плагине Tasker Utils, пример профиля, удаляющего СМС определенного содержания от определенного номера Tasker (Пост brisker #42600445)

Прошлые версии

Собранные здесь прошлые версии программы интересны только историкам-археологам, исследующим артефакты Цифрового века. Не надо скачивать эти версии, надеясь, что они будут работать. Текущие официальные стабильные версии работают заведомо лучше. А если вам кажется, что вы нашли в них ошибку, лучше обсудить это в теме или написать автору на оф.форум.
версия 4.8u5 Tasker (Пост Alex0047 #50556293)
версия 4.7u3 Tasker (Пост Alex0047 #41599102)
версия 4.6u3 Tasker (Пост Alex0047 #37216898)
версия 4.5u1 Tasker (Пост nihilihin #34888513)
версия 4.4u3 Tasker (Пост Alex0047 #33631921)
версия 4.3u4 Tasker (Пост Henry1 #31181212)
версия 4.2u3 Tasker (Пост Giacomino #27022916)
версия 4.1u3 Tasker (Пост ScAnMaG #22883929)
версия 4.0u1 Tasker (Пост Oleg V #21050872)
версия 1.3.3u2 Tasker (Пост ScAnMaG #17226665)
версия 1.3.2u1 Tasker (Пост MENNENN #16762182)
версия 1.3.1 Tasker (Пост roly #14920421)
версия 1.3u1 Tasker (Пост skunsofob #14519505)

Ключевые версии Tasker на оф. сайте http://tasker.dinglisch.net/releases/


p.s. выражается благодарность всем, кто принимал/принимает/будет принимать (и примет!) участие в создании шапки.

Сообщение отредактировал username11 - 14.08.17, 16:35

Причина редактирования: Tasker 5.0u3, существенная переработка МСХ 11, добавления к МСХ 3

brake

Сообщение #2

10.06.10, 10:11
Попробовал перескочить с Locale.

Все довольно мощно (на офсайте кое-что разжевано подробно), многое настраивается, например, на мотомайлстоне громкость нотификаций и сигнала SMS одинаковая всегда.
А мне надо было сделать нотификацию тихо, а SMS - громко. Удалось с помощью Таскера.

Однако есть минусы (может я просто еще не разобрался):
1. Не работает со встроенными волпейперами (только картинки с файловой системы, я че-то не нашел где дефолтные волпейперы на майлстоне лежат). Locale, наоборот, работает только со встроенными :)
2. Не работает возврат к предыдущим настройкам при окончании срока действия профиля, хотя заявлен как фича. Приходится пользовать ExitTask
Пример:
Задача: сделать нотификацию тихо, а SMS - громко.
Ставлю звук нотификации тихим.
Делаю правило, чтобы при приходе SMS звук нотификации делался громким
Проверяю
При приходе SMS звук реально стал громче, но таким и остался, теперь и нотификации громкие :( А я ожидал, что вернется на прежний уровень...

2.1 В продолжение п. 2 - не ко всем профилям можно прикрутить ExitTask :( Мне удалось только к одному, первому по счету.

Сообщение отредактировал brake - 10.06.10, 10:24

Причина редактирования: добавил пример

--------------------

SG S8+ 128 Gb,

Nomad14

Сообщение #3

10.06.10, 10:52

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 234
Регистрация: 22.05.08
Xiaomi MiPad

Репутация: -  29  +


brake @ 10.6.10, 10:11

не ко всем профилям можно прикрутить ExitTask Мне удалось только к одному, первому по счету.


Долгое нажатие на действии -> Add Exit Task
Добавляется без проблем.
И там ещё много неявных действий - например я вот вчера разобрался как сделать на экран кнопку, по нажатию на которую выскакивает диалог - сделал себе переключение в одно нажатие громко/вибро/самолёт + все сопутствующие настройки. :)

Сейчас разбираюсь с повторениями - пытаюсь сделать, чтобы при пропущенном звонке/смс, раз в N минут играла мелодию и вибрировала. :)

Сообщение отредактировал Nomad14 - 10.06.10, 10:54

brake

Сообщение #4

10.06.10, 11:03
Nomad14,
а с возвратом настроек та же фигня, что и у меня (стих блин!)?

UPD: Ну нет у меня ExitTask :( Только на первом профиле появляется (самом верхнем в списке). На остальных только AddTask.

Сообщение отредактировал brake - 10.06.10, 11:11

--------------------

SG S8+ 128 Gb,

datwm5

Сообщение #5

10.06.10, 11:07

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 344
Регистрация: 01.09.06
Motorola Milestone

Репутация: -  3  +


а позицию по базовой станции он умеет определять? если да то получается хороший и бесплатный конкурент setting profiles.

--------------------

Motorola Milestone [EclairMOD v3b] < HTC Artemis < Qkek 9100 < Nokia 6600 < Siemens S35

brake

Сообщение #6

10.06.10, 11:14
datwm5 @ 10.6.10, 12:07

а позицию по базовой станции он умеет определять?


Не пробовал. Даже если нет, то заявлена поддержка плагинов Locale, а там такой плаг точно есть.

--------------------

SG S8+ 128 Gb,

brake

Сообщение #7

10.06.10, 12:13

Опыт показал, что если в контексте есть хоть один Event (типа PhoneIdle или Received SMS), то ExitTask невозможна.
В остальных случаях вроде работает.

--------------------

SG S8+ 128 Gb,

Nomad14

Сообщение #8

10.06.10, 13:08

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 234
Регистрация: 22.05.08
Xiaomi MiPad

Репутация: -  29  +


brake @ 10.6.10, 12:13

Event (типа PhoneIdle или Received SMS), то ExitTask невозможна.


Всё немного не так. :)
Сразу надо включить разделение по типам событий: Кнопка -> Show Context Selector.
После этого всё становится на свои места. В самой правой закладке, там где все хитрые события - выход из них не отлавливается. В первой и второй - Exit Task присутствует, в остальных - не знаю, мне не нужно. ;)

brake

Сообщение #9

10.06.10, 14:26
Nomad14,
В общем-то я о том же. Просто у меня есть профили, где 2 контекста, например:
Event: PhoneCall
Time: 00:00 - 06:00

А внутри профиля набор задач общий для обоих контекстов. Вот в таком случае и нету ExitTask (а так ее охота :) )

Но, видимо, решается параллельным профилем и приоритетами - надо поэкспериментировать.

--------------------

SG S8+ 128 Gb,

Nomad14

Сообщение #10

10.06.10, 15:14

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 234
Регистрация: 22.05.08
Xiaomi MiPad

Репутация: -  29  +


brake @ 10.6.10, 14:26

Просто у меня есть профили, где 2 контекста, например:Event: PhoneCallTime: 00:00 - 06:00


О, вот с этого места поподробнее. :)
Можно последовательность кнопок для создания действия, срабатывающего по двум событиям сразу (логическое "И")? А то я не понял, как это делать - сделал как программист - завёл переменную-флаг. :)

brake

Сообщение #11

10.06.10, 15:26
Nomad14 @ 10.6.10, 16:14

О, вот с этого места поподробнее.


Тапаем на Контексте (не на задаче, как Вы писали ранее, т.е. левее задачи)
В появившемся меню выбираем Context->Add - все, после нелегкого выбора у нас к профилю добавлен второй контекст.

Для ясности в терминологии:
Профиль - все, что нарисовано в отдельном прямоугольнике (совокупность контекстов и задач)
Контекст - кондишен условие, при котором выполняется задача (левый прямоугольник в профиле)
Задача/Task - правый прямоугольник в профиле. Ряд действий, которые выполняются в контексте, к которому привязана задача. Задача м.б. привязана более, чем к одному контексту.

Сообщение отредактировал brake - 10.06.10, 15:36

--------------------

SG S8+ 128 Gb,

nokiae500

Сообщение #12

10.06.10, 23:28

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 141
Регистрация: 08.01.09

Репутация: -  15  +


А может это программа запускать синхронизацию NewsRob (как Locale например), что то полазил по настройкам так и не понял этого.

--------------------

HTC Touch 3G-->> HTC Tattoo-->> HTC Incredible S -->> SGS3-->> SGS4A-->> SGS5-->> ?

dptundra

Сообщение #13

11.06.10, 09:17

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 200
Регистрация: 26.01.10
Xiaomi Mi 5S 3/64

Репутация: -  12  +


Так понял, что единственная хард кнопка, на которую можно что-либо поставить - камера. Чего делать, если отдельной кнопки под камеру нет?

Nomad14

Сообщение #14

11.06.10, 11:54

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 234
Регистрация: 22.05.08
Xiaomi MiPad

Репутация: -  29  +


dptundra @ 11.6.10, 9:17

Чего делать, если отдельной кнопки под камеру нет?


Вопрос риторический. :) Использовать другие события: например, с помощью плагинов.
Например, Locale Shake Plug-In - можно что-нибудь делать по встряхиванию телефона;
Screebl - по положению телефона в пространстве (по трём осям): Телефон в положении "возле уха" - одно действие, "лицом вниз" - другое и т.д.

datwm5

Сообщение #15

11.06.10, 12:11

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 344
Регистрация: 01.09.06
Motorola Milestone

Репутация: -  3  +


а как часть программа проверяет правила (если условия по времени и по местоположению)? батарейку сильно?

--------------------

Motorola Milestone [EclairMOD v3b] < HTC Artemis < Qkek 9100 < Nokia 6600 < Siemens S35

brake

Сообщение #16

11.06.10, 12:43

datwm5,
При "равных" настройках батарею жрет не больше, чем Locale. Но это по ощущениям. Тонких замеров не делал.

--------------------

SG S8+ 128 Gb,

Nomad14

Сообщение #17

11.06.10, 13:11

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 234
Регистрация: 22.05.08
Xiaomi MiPad

Репутация: -  29  +


brake @ 11.6.10, 12:43

Тонких замеров не делал.


Автор пишет, что по энергосбережению проделал большую работу. В частности, события проверяются в порядке увеличения энергоёмкости - это даёт возможность не запускать энергоёмкие проверки.

Так что я думаю, должно быть точно не хуже чем Locale. Скорее лучше. :)

brake

Сообщение #18

14.06.10, 23:20
Есть у кого идеи насчет того, как можно менять wallpaper при установке тихого режима (ну и обратно, при отмене тишины)?

Не нашел ни стейта ни ивента похожего на то, что нужно :(

Можно, конечно, замутить профиль под это дело и включать его виджетом, но охота от обратного (ИМХО так красивее, чтобы юзать любой виджет для тишины).

PS: на оф. форуме анонсирована (но не выложена) новая версия

Сообщение отредактировал brake - 14.06.10, 23:37

Причина редактирования: доб. ссылку на анонс новой версии

--------------------

SG S8+ 128 Gb,

Nomad14

Сообщение #19

15.06.10, 00:02

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 234
Регистрация: 22.05.08
Xiaomi MiPad

Репутация: -  29  +


brake @ 14.6.10, 23:20

как можно менять wallpaper при установке тихого режима (ну и обратно, при отмене тишины)?


Лично я себе на экран виджет сделал с менюшкой на три пункта: громко, вибро и тихо. Туда же можно и смену обоев впихнуть. :)
Имхо очень удобно. А как ты устанавливаешь режим?

brake

Сообщение #20

15.06.10, 00:13
Nomad14 @ 15.6.10, 1:02

А как ты устанавливаешь режим?

Я использую виджет SwitchPro, и хотел как-то отследить сам момент выключения звука.

--------------------

SG S8+ 128 Gb,

nokiae500

Сообщение #21

15.06.10, 23:30

Местный


[offline]

Группа: Друзья 4PDA
Сообщений: 141
Регистрация: 08.01.09

Репутация: -  15  +


Очередная версия Прикрепленный файлTasker.0.30b.apk ( 737,74 КБ )

--------------------

HTC Touch 3G-->> HTC Tattoo-->> HTC Incredible S -->> SGS3-->> SGS4A-->> SGS5-->> ?


Источник: http://4pda.ru/forum/index.php?showtopic=173935

Закрыть ... [X]

Лаборатория альтернативной истории Как сделать ходьбу в сталкере

Как сделать простейшую батарейку Обзор-тестирование Garmin GPSmap 62/62s
Как сделать простейшую батарейку Tasker - 4PDA
Как сделать простейшую батарейку Василий Берешков Глеб Бокий чекист и оккультист
Как сделать простейшую батарейку Выбор велосипеда: найнер или mtb 26 Сайт Котовского
Как сделать простейшую батарейку Гибка листового металла своими руками Строительный портал
Как сделать простейшую батарейку Инструкция с фото как поднять УАЗ буханку
Как сделать простейшую батарейку Как исправить шрифт если вместо русских букв
Как сделать простейшую батарейку Как определить, «заряжена» ли машина присадками - Автоцентр
Как сделать печь для барбекю своими руками Малая Азия Википедия Массаж на все случаи жизни Огород на окне в детском саду. Оформление своими руками Поделки своими руками Прыщи на груди: причины и лечение Советы, как рассчитать количество радиаторов отопления Читать онлайн - Вентворт Патриция. Мертв или жив