Tasker’s For Hackers

I've been tweaking my android for a couple months now, and have recently become enamored (obsessed?) with an app called Tasker. It's like a vendor sanctioned root-kit with a built in development platform. It's the kind of thing that couldn't happen on iOS, and ought to come with a warning label. It slices. It dices. It makes curly fries. This app is cooler than the other side of the pillow.

Tasker is, at it's core, a tool for accessing all the APIs and events exposed by every other app on your Android. It then allows you to mix and match the events and activities in whatever manner matches your life style, or tickles your fancy. You could, for one silly example, play "Take This Job and Shove it" every time you come within range off your office wireless connection. You can automatically launch Angry Birds at the beginning of every meeting. You could put it on your teenage daughter's phone and have it send you a text every time she's talking to that pimply punk with the skate board. The possibilities are practically limitless.

Each group of activities is called a "Profile", made up of any number of "Contexts" (triggers) and "Tasks" (actions). For example, I have a Profile called "In Car". The contexts that make this profile active are "Connected to AC Power" and "Connected to headset" (actually, an auxiliary connection). Since the only place both of these will happen are while I'm driving, it's a pretty good trigger for car related activities. When both of these conditions are met, "In Car" becomes "active", and all related tasks are fired.

I've set up my phone to pop up a menu of car related apps I like to run, so that I don't have to search for them. There is also a slot for tasks related to exiting a profile, if there are certain things you want done, for instance, when you park your car and get out.

Dude, Where’s My Car?

Let's assume you have a pathetic memory, as some technophiles I know do. It would be possible to create an action that stores the geographic location of where you left your car, for instance. Here's how you would do this.

In your "In Car" profile, tap on your task icon. Select "Add Exit Task" to the contextual menu. Name it "Leave Car". Tap the plus sign to add an action. Choose "Variable" -> "Variable Set". In the name field, enter something like %MARKSPOT. In the "To" field, enter %LOC. %MARKSPOT is a free-form variable you just created. %LOC is a built in variable that records your current latitude and longitude. Tap "Done" twice to back out. Now, whenever you get out of your car, a variable called %MARKSPOT will be set to your current coordinates.

Now, in an empty slot on your launcher, add a widget (menu -> add -> Widgets -> Task). Select "New Task", and name it "Find Car". Hit "Ok" then add an action with the plus symbol. Tap "App" -> "Open Map". Set “Mode” to "Point" and "Lat,Long" to %MARKSPOT (no quotes). Tap the multi-colored squares icon to select an appropriate icon (mine looks like a car), and hit "Done" to complete it. Now test it. You can go tap the "Leave Car" task and use the "Test" button from the edit screen to set %MARKSPOT to your current location. Then go somewhere else and launch your newly created "Find Car" widget. It will show you as an arrow and your car as a star on a Google map, with an accuracy as good as you can get with GPS (assuming you have it enabled).

I may be the only guy who ever forgot where he left his car, so maybe this won't do anything for you, but if you have any imagination, you can see the possibilities. The app costs a little more than $6, and development (new contexts, new actions) is ongoing. If you’re interested, check out the Tour and Step-Thrus. Go grab it and do something your carrier never intended.