===== Tasker ===== {{:tasker:tasker.png?nolink&100 |}} {{howhard>2}} {{howhard>5}} [[https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm&hl=en_GB|{{:media:icons:action:1x_web:ic_shop_black_48dp.png?nolink&50x50|Get from Google Play}}]] [[https://tasker.joaoapps.com/download.html|{{:media:icons:social:1x_web:ic_share_black_48dp.png?nolink&50x50|Get a free, 7 day trial}}]] ===== Introduction ===== How to describe Tasker? Where to begin! Instead of just copying what everyone else puts and what it is described as, let me first tell you what Tasker is, __to me__! It was only originally installed because of [[watchmaker:|Watchmaker]]. I got the hang of building faces and coding Lua again, but wanted extra data on the face. Namely, my SMS data. Originally, AutomateIT was used, as it included Wear support. Alas, it didn't work with Watchmaker. Ergo, Tasker. Now, all I wanted was when I got an SMS, that it'd display on a scrolling text that I had made for it on a watchface. This was the very first I setup. I had no idea what the heck I was doing, this was 4 years ago (2014) and all the guides then were very technical and sharing wasn't as easy with all these XML files. However, it didn't take me too long to realize how to do it. I then wanted more data! I saw Tasker then as a small tool that simply acted as a proxy, a middle-man if you wish. It sat on my phone waiting for certain events & when they occur, run a sequence of actions. I didn't think of it any more than just another app to get a job done. Being a Trekkie, I wanted to build a watchface themed around LCARs. On this, I wanted a Tri Corder, using real data from the phone. This boggled me as I knew Tasker could do it. Well, I knew it could do it as I realized Tasker could see the value of my light sensor and magnetic sensor. I wanted them sent to the watch frequently, too, so the tri corder was a real as possible. This is when I learnt that Tasker tasks could be ran from other apps, Watchmaker included. I then explored more of Tasker actions and suddenly noticed that is has a programming style mannerism with IF/For loops, variable conditions and regular expression. This may sound daunting, as usually it is, but I was overly shocked at how easy it was to grasp here. Anywho, long story short, a project was born! [[https://www.reddit.com/r/WatchMaker/comments/bb8yfv/my_watchmaker_tasker_project_extra_data_for_faces/|Watchmaker Tasker Project]]. This is my oldest and still used project. Tasker to me is not just another app. It is a vital tool. It deeply hooks into Android and can do virtually anything you can think of. Even more so now! All of those small apps you use to add a tweak to your NavBar, or remove an irritating notification or an overlay to do things in an app... Tasker could replace. I have it doing so many things now, including providing my device (and me) with additional security; both for safety and in case phone is lost/stolen. Have augmented and enhanced my smarthome, can totally control my TV from Tasker alone after building a WiFi remote. Four years ago, I wouldn't have even dreamed of doing this with Tasker. **Best! Investment! Ever!** ==== For the average Joe and Developer ==== Tasker serves a wide range of purposes. It can be used to do very simple things, such as simply activate DnD mode between set hours. It can also be used to make fully fledged app with user interfaces and a vast array of functionality that could be sold on Google Play. You do not need to know any programming languages at all in order to get to use Tasker, It;s actually a very good app at introducing you to how computer programs work, but instead in lines of cryptic code, a logical, user interface list of actions. You can be a fully fledged Java developer and use your coding knowledge to use the Java Functions of Tasker to build extremely powerful Tasks and apps to upload on Play! It's basically an app that if you can do it yourself on your phone or another app can add some tweak you like, Tasker can probably do it! ===== Documentation ===== Tasker itself is quite well documented. ==== GitHub ==== You can view the latest, crowd-sourced documentation on the [[https://github.com/joaomgcd/TaskerDocumentation|GitHub]] page. ==== English version here ==== [[:tasker:docs:en:start|{{:media:icons:action:1x_web:ic_touch_app_black_48dp.png?nolink&50x50|WiKi Version}}]] WiKi version of the documentation from GitHub ==== Other resources ==== I will also link to 3rd party websites here that can provide you with examples, guides, videos and other tips & tricks to help you get going! * [[https://joaoapps.com/|Developers Website]] - João provides a wealth of guides and documentation for his apps. * [[http://tasker.wikidot.com/|Tasker Wiki]] - Setup by Pent so users could share profiles, tasks, guides and how-to's. * [[https://notenoughtech.com/|NotEnoughTech]] - This capable user provides both introductory and technical projects for you to try! * [[https://www.rorycodes.com/|RoryCodes]] - Another capable user providing a wealth of guides for you to try! There are other resources out there, these are the ones that provide a focus around Tasker and home automation. ===== Plugins ===== Tasker's power is extended further by the use of it's plugin API. This allows 3rd party apps to interact with Tasker and for Tasker to do stuff directly with the app! [[:tasker:plugins:list|{{:media:icons:action:2x_web:ic_touch_app_black_48dp.png?nolink&50x50|Plugin Documentation}}]] For a list of plugins I am aiming at documenting first! [[:tasker:plugins:list:start|{{:media:icons:action:2x_web:ic_book_black_48dp.png?nolink&50x50|Plugin list}}]] This is a list of plugins provided by [[https://www.reddit.com/user/mannabhai/|u/mannabhai]] over on [[https://www.reddit.com/r/tasker/comments/5i3bv1/project_tasker_plugin_list_spreadsheet/|Reddit]] ===== Permissions ===== {{:media:icons:alert:2x_web:ic_error_outline_black_48dp.png?nolink&100 |}} Tasker requests permissions in almost every area of Android. ==== Runtime permissions ==== * Body Sensors * To monitor heart and step counter. * Calendar * To get events for and information about your calendar events * Call Logs * To retrieve value of last person called, use Java Functions to query call log, clear/view/mark call log entries etc. * Camera * To take photos using available cameras * Contacts * To get contact information for incoming calls and SMS, interact with contacts etc. * Location * Geofences, location speed, altitude etc. Also allows for Bluetooth and WiFi functions and features * Microphone * Record audio, take voice etc. * SMS * Read and send SMS, react to SMS received events, get SMS data. * Storage * To read/write to your internal storage * Telephone * To react to call events, place calls etc. * Storage Access * Read/write files & react to different file events ==== Other permissions ==== * ADB Permision WRITE_SECURE_SETTINGS * To change //settings// values on your device * ADB Permission READ_LOGS * To read //logcat// * ADB Permission CHANGE_CONFIGURATION * To change system locale * ADB Permission DUMP * To run //dumpsys// * ADB Permission SET_VOLUME_KEY_LONG_PRESS_LISTENER * To react to long press events of your volume buttons ==== Special permissions ==== * Will benefit being excluded from doze * SYSTEM_ALERT_WINDOW * Draw over other apps for web screens * BIND_DEVICE_ADMIN * To lock screen + other administrative actions * BIND_NOTIFICATION_LISTENER_SERVICE * To react to notifications received, cleared and clicked from other apps * PACKAGE_USAGE_STATS * To react to app changes, get app information, run times and more! * BIND_ACCESSIBILITY_SERVICE * Use accessibility service to detect app launches and other information ==== Trackers ==== * Awaiting tests for latest version ~~NOCACHE~~ Today this page has been viewed {{counter|today}} times today! ~~socialite~~