Wednesday, July 13, 2016

Gotcha of the day: Re-launching the Runkeeper Pebble App on Demand

I'm surprisingly attached to Shira's old Pebble Smart Watch (now affectionately termed the 'Pebble Classic'). One of the reasons for this is its no-fuss integration with Runkeeper, the mobile app I use to track my runs, hikes and other outdoor pursuits. The free version of Runkeeper does just what I need it to do: track my progress on a map and give me basic stats. It will announce mileage, time and other stats on a regular basis, if I set it up to. It has no annoying ads or other nuisances designed to get me to upgrade. Instead, it promises cool features if I take the plunge, which I may get around to doing.

The coolest Runkeeper feature, for me, is its seamless integration with the Pebble Classic. When I start Runkeeper, assuming my Pebble is connected, it gives me this icon:

When I hit the Go Running button, Runkeeper kicks off the Pebble App for me, and I get basic stats on my wrist:

I can leave the Runkeeper Pebble App and navigate to another app on the watch (like one to notify Shira of my location when I'm running late). When I go back to the Pebble main menu, I see the Runkeeper app ready for me to re-select:

Normally, this all works great. I appreciate that it's totally seamless and I don't have bother with installing or maintaining the Runkeeper app on my watch. It's handled automatically for me.

Now here's the gotcha: if I leave the Runkeeper app and don't return to it within a few minutes (maybe 5 minutes? maybe 10 minutes?), Pebble must get the idea that I don't want to run the app any longer and it kills it. Now when I return to the main menu, Runkeeper is gone:

Sure, Runkeeper is running fine on the phone and still tracking my progress. But I've lost the quick display on my watch, and I've lost the ability to easily pause and restart the stats. There's simply no obvious way to tell Runkeeper to re-launch the app.

Luckily, Tasker to the Rescue. AutoPebble comes with the ability to open or close an app on the watch. Using this capability, I was trivially able to launch the Pebble app:

Pebble Launch Runkeeper (104)
 A1: AutoPebble App [
  Configuration:Full Screen: false
  Check Pebble Connected: false
  Other Pebble App: Run Keeper 
  Other Pebble App Action: Open
  No Prefix if Command: false
  Do Not Disturb: false
  Clear History: false
  Open Phone App: false
  Save Scren: false
  Don't Send Screen: false
  Go Back: false
  Go Back Multi: false Timeout (Seconds):20 ] 

Once I had an action setup to launch the Pebble App, I wired it into a custom menu on the watch.

If all goes as planned, the next time I'm out running or hiking and I "lose" the Runkeeper app, I should be able to navigate on my watch to the Launch Runkeeper menu item, which will invoke the action above.

The trickiest part of the process was figuring out which of the Pebble apps was the Runkeeper app I needed to invoke. I figured this out by going to: AutoPebble » Manage Other Pebble Apps and removed all the apps shown on that screen. I then kicked off Runkeeper which spawned the watch app. I then went back to the AutoPebble app on my phone to see which UUID has been created. I then renamed that newly registered app as Run Keeper. Once done, you should have something like so:

No comments:

Post a Comment