Как сохранить парковочное место с помощью Tasker

Вернитесь на свое место, используя навигацию Google Maps в режиме ходьбы.

Если вы зарегистрированы и регулярно пользуетесь Google Now, возможно, вы видели карточку «Где я припарковал машину». Эта дополнительная карточка отображается всякий раз, когда Google считает, что вы прекратили движение и оставили свой автомобиль.

Я не езжу регулярно, а езжу везде на велосипеде, и мне очень лестно каждый раз, когда Google подает мне эту карту. Это доказывает, что Google еще не знает о нас всего, но если вы достаточно сообразительны, карта может быть использована для повторного поиска вашего велосипеда (если только он не был украден).

С предстоящей поездкой в ​​Китай я понял, что сервисы Google не помогут мне в повседневной жизни. Китай блокирует Google. Так что, конечно, это означает, что Google Now больше не будет. Если вам посчастливилось отправиться в путешествие туда, куда не может добраться Google, или вы просто не являетесь поклонником Google Now, вам может быть интересно воспроизвести профиль ниже. Если нет, вы всегда можете прокрутить вниз, чтобы загрузить и импортировать файл проекта.

Первоначально этот проект был создан Мишаалом Рахманом, но позже благодаря обсуждениям, экспериментам и сотрудничеству я расширил его.


Чувак, где моя машина? Сохранить мое парковочное место

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

Приятно отметить, что Android неплохо справляется с управлением доступом к вашему местоположению, чтобы обеспечить минимальный расход заряда батареи, но если вы предпочитаете, чтобы службы определения местоположения были отключены, вам необходимо включить службы определения местоположения, чтобы Tasker мог получить исправление местоположения. Чем больше служб определения местоположения вы включили, тем быстрее исправление.

По умолчанию Android проверяет ваше местоположение с помощью GPS, мобильных данных и WiFi в режиме «Высокая производительность». Если вы всегда оставляете службы определения местоположения включенными, переходите к следующей части. В противном случае вы можете переключить местоположение с помощью приведенного ниже запустить оболочку действие в Tasker (требуется root).

settings put secure location_providers_allowed=gps,network,wifi

Кроме того, вы можете использовать подключаемый модуль «Настройки безопасности», чтобы переключить эти (здесь как заставить безопасные настройки работать на Android Nougat). Наконец, для тех из вас, у кого нет root-доступа, если вы предоставить разрешение SECURE_SETTINGS для AutoTools затем вы можете переключать местоположение с помощью этого плагина.

Сохранить местоположение

Сохранить местоположение

LocCar  Abort Existing Task A1: Variable Clear [ Name:%LastLocation Pattern Matching:Off ]  A2: Notify Cancel [ Title:Location Issue Warn Not Exist:Off ]  A3: Get Location [ Source:Any Timeout (Seconds):20 Continue Task Immediately:Off Keep Tracking:Off Continue Task After Error:On ]  A4: Variable Set [ Name:%LastLocation To:%LOC Recurse Variables:Off Do Maths:Off Append:Off ]  A5: Notify [ Title:Location Saved Text:Tap to Navigate Icon:hd_location_place Number:0 Permanent:Off Priority:5 ] If [ %LastLocation Set ] A6: Set Widget Icon [ Name:LocCar Icon:content://com.android.externalstorage.documents/document/primary%3AMaterial-Icons-010317-032209%2Fres%2Fdrawable-xxxhdpi%2Fic_car.png ] If [ %LastLocation Set ]  A7: Notify [ Title:Location Issue Text:Im sorry location could no be set. Icon:hd_aaa_ext_car Number:0 Permanent:Off Priority:5 Actions:(1) ] If [ %LastLocation !Set ]  A8: Set Widget Icon [ Name:LocCar Icon:content://com.android.externalstorage.documents/document/primary%3AMaterial-Icons-010317-032710%2Fres%2Fdrawable-xxxhdpi%2Fic_car.png ] If [ %LastLocation !Set ]

скриншот_20170103-165204

Получение местоположения (A1-A4)

Есть несколько вещей, которые я хочу сделать, прежде чем получить исправление местоположения. Потому что большую часть времени %LOC (глобальная переменная местоположения Tasker) уже будет иметь назначенное значение (последнее исправление местоположения), я хочу использовать только координаты местоположения, запрошенные через профиль. Я буду использовать глобальную переменную %LastLocation для хранения этих координат. Если задача была запущена снова из-за ошибки или тайм-аута, мне нужно очистить существующее предупреждающее уведомление с помощью действия «Уведомить об отмене».

Уведомления (A5,A7)

Есть два результата действия «Получить местоположение». Мы получим новый набор координат, или действие не сможет получить координаты. Если исправление будет найдено, появится уведомление. Обратите внимание на название этого уведомления. Мы будем использовать это имя для запуска профиля «Место возврата» позже. Если исправление местоположения не выполнено или координаты такие же, как и до действия «Получить местоположение», мы хотим отобразить предупреждение с возможностью повторного запуска той же задачи еще раз (Действие «Выполнить задачу» назначено в виде кнопки).

Кнопка (A6,A8)

Я упоминал ранее, что будет кнопка, которая изменит цвет, чтобы показать нам состояние нашего профиля парковки. Цветовые коды:

  • белый (готовый)
  • красный (неудача)
  • зеленый (вооружён)

Все, что вам нужно, это виджет Tasker (не ярлык), размещенный на главном экране для задачи, которая сохранит местоположение. Обязательно назначьте этой задаче значок, чтобы можно было добавить ярлык задачи с экрана виджета. Я использую это вместо ярлыка, так как заставляю Tasker менять цвет значка в соответствии с текущим состоянием.
Один из моих любимых способов получить значки — это коллекция значков Material Design, так как вы можете найти тот, который вам подходит, и быстро предоставить его цветовые альтернативы.
Я пометил действия, чтобы показать, какое из них соответствует результатам неудача/успех. условие ЕСЛИ %LastLocation знак равно установлен/не установлен определяет этот результат.

Вернуть местоположение

Место возврата

 ReturnLocation  A1: Send Intent [ Action:android.intent.action.VIEW Cat:None Mime Type: Data:google.navigation:q=%LastLocation&mode=w Extra: Extra: Extra: Package:com.google.android.apps.maps Class: Target:Activity ]  A2: Set Widget Icon [ Name:LocCar Icon:content://com.android.externalstorage.documents/document/primary%3AMaterial-Icons-010317-032200%2Fres%2Fdrawable-xxxhdpi%2Fic_car.png ]  A3: Wait [ MS:0 Seconds:3 Minutes:0 Hours:0 Days:0 ]  A4: Variable Clear [ Name:%LastLocation Pattern Matching:Off ]

скриншот_20170103-044653

Задача очень проста. Мы запустим намерение Google Maps, которое будет содержать ссылку на местоположение:

Action: android.intent.action.VIEWData: google.navigation:q=%LastLocation&mode=wPackage: com.google.android.apps.mapsTarget: Activity

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

Профиль: Вернуться к местоположению

скриншот_20170103-044743

Вернуться к профилю местоположения

Profile: Return To Location Event: Notification Click [ Owner Application:* Title:Location Saved ]Enter: ReturnLocation

Теперь, когда мы установили местоположение нашего автомобиля, мы создадим профиль, который срабатывает, когда мы позже вручную запрашиваем местоположение нашего автомобиля. Чтобы запустить эту задачу из уведомления, которое мы создали ранее, создайте событие Уведомление Нажмите и добавьте название созданного ранее уведомления (Location Saved)

Теперь у вас есть готовый профиль.

Использование голосовых команд

Профиль AutoVoice

Profile: Save Location Event: AutoVoice Recognized [ Configuration:Easy Commands: save my location,save this location,save my parking spot,save this parking spot,remember my parking spot,remember my location,mark this location,mark this spot,mark this parking spotResponses: okay i'll save your parking spot ]Enter: LocCar 

Если вы хотите добавить голосовой триггер для сохранения местоположения вашего места парковки, создайте профиль, используя AutoVoice распознан мероприятие. Заполните ввод возможными голосовыми командами, которые вы будете использовать, разделенными запятыми. Если хотите услышать ответ — включите его в меню «Ответы». Как только это будет сделано, свяжите это с ЛокКар задача создана ранее.

Если вы хотите использовать команду AutoVoice, чтобы найти сохраненное местоположение. Создайте новое событие AutoVoice Recognized и свяжите его с Место возврата Задача.


Вывод

Легко предположить, что у всех есть доступ к одним и тем же ресурсам, но это не всегда так. Если вам нужен простой способ сохранить парковочное место, не полагаясь на сервисы Google, или вы просто предпочитаете полностью избегать сервисов Google, этот проект для вас.

Этот проект также можно модифицировать и использовать для других целей, в отличие от парковочной карты Google Now, так что посмотрите, сможете ли вы придумать что-то лучше. Вы также можете поэкспериментировать с AutoNotification, чтобы сделать уведомления более красивыми или более интерактивными. Весь проект был близок к ванильному интерфейсу Tasker (кроме использования AutoVoice).

Скачать проект здесь!

Чтобы импортировать файл проекта Tasker, загрузите указанный выше файл и сохраните его в любом месте вашего внутреннего хранилища. Откройте Tasker и убедитесь, что «режим новичка» отключен в меню настроек. Затем нажмите и удерживайте значок «домой» в левом нижнем углу и нажмите «импорт». Найдите ранее сохраненный файл prj.xml и выберите его, чтобы импортировать. Теперь вы увидите новую вкладку в нижнем ряду, содержащую все профили и задачи, на которые мы ссылались в этой статье.

Мы надеемся, что вам понравится это наше маленькое творение, и дайте нам знать, если вы считаете, что мы можем сделать какие-либо улучшения!

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *