Today I set up a goal to try to reduce the number of times I look at my phone.
The idea is to get IFTTT to record a data point whenever the phone is unlocked. IFTTT however, does not seem to let me directly use android intents. So my rather inelegant solution is to record the screen unlocking with Tasker.
I set up a Join action to trigger IFTTT following this page, except replacing their example on the IFTTT side with the beeminder datapoint adding.
Then it’s quite simple to set up tasker to call this join action whenever the phone is unlocked. in Tasker we create a new profile, and in the drop-down menu select “Event -> Display -> Display Unlocked”. Then when we add an action, we can see “Join Action” as one of the available actions, and when we click on it it suggests to us the action we just created.
The fact that this uses 3 apps irks me, but it is working well at least.
Nifty! That’s a clever idea.
I believe you could do it with just Tasker if you want to. You can use Tasker to submit a data point directly to Beeminder, using either the Plugin > Beeminder action (if you have the Beeminder app installed) or with a direct POST to your goal using Beeminder’s API.
I find the latter more reliable, possibly because of a bad internet connection here. I was finding that sending data points failed far too often for comfort using both methods (from timeouts IIRC), but for the latter method my Task can easily check the response code and if it’s not a success I can repeat the attempt. Using the Beeminder app plugin though is super-easy and available as soon as the Beeminder app is installed. You may want to start with that and stick with it if it’s always successful.
In case it helps though, there’s some info at Help adding a datapoint from Tasker using Beeminder API about using the Beeminder API with Tasker (and probably in a bunch of other places too; that was just the first one I found), but you’d be welcome to post here if you had questions about it or needed help!
Thanks for the help! I will try out both of the ways you suggested.
I use Android Automate to do this, following Using Beeminder with Android Automate.
After setting up the Beeminder Service, I use this Automate Flow to Beemind phone checks that are longer than 45 seconds. It gives some false positives but it works well enough for me.
That looks awesome!
I liked the idea of including any unlock because even opening the phone for 10 seconds breaks my focus. But on the other hand I can already see that it creates a bit of a perverse incentive to keep looking at my phone once I’ve already unlocked it
Why not beemind both?
I have updated the Automate flow so it works a little better and doesn’t give false positives anymore–the same link above will now download the better version.
Yeah, both sounds good. Thanks a ton!
On the topic of phones I started using Stayfocused for Android. Set yourself hourly and daily limits on apps that are bad for you. IMO this isn’t something you need to Beemind, phone addiction is a low-level disease of the mind that is best countered by just blocking the phone.