Prior to the release of iOS 6 last September, iOS reminders (tasks) were based solely on time-based triggers. For example, you could set a reminder to call Fred tomorrow at 3:00p. The inability to trigger reminders based on location, in my mind, was a huge gap. When Apple closed that gap, I (along with many others, I’m sure) celebrated. An example of a location-based reminder would be something like this: remind me to pick up milk when I leave the office. The reason this couldn’t work based purely on time is hopefully obvious. If you thought you were going to leave the office at 5:00p when you set the reminder, but actually left at 3:00p, you would be home before you were reminder (and by then, it would likely be too late).
Before I walk through the mechanics of setting a location-based reminder, let me briefly mention the requirements for this to work. First, you need to sync your Reminders with a free iCloud account (which works to your advantage considering these reminders would then sync to all other iOS and Mac devices). Secondly, you need to have GPS (and ideally WiFi) services enabled. Your device can’t tell you where you are if it doesn’t know where it is, and it uses these services to gather that information.
OK, let’s get into it...
First, let’s go in to the Reminders app and create a new reminder. In my case, I want to call Tim Cook to ask about the upcoming iOS 7 release. After I create my new reminder, I will flip the “Remind Me At a Location” switch so that my reminder now looks like this:
You may have already noticed that when you flip the switch, your device will automatically populate the location with your current location. It will also assume you want to be reminded when you leave this location. That, of course, can be changed to an arrival.
In my case, I am headed to a dinner at the White House in the next few days (of course), and I want to call Tim as soon as I arrive. To change the reminder location, I will tap on the current address. This will take me to a screen that looks like this:
This screen will auto-populate with your current address as well as any other addresses you have set up in your Address Book card. My card happens to have two addresses already (work and home), so it populated those as well. Lastly, you can enter an ad-hoc address, as I will do here. Once I have entered the new address (and Reminders has validated it’s accuracy), I will tap “Details” to go back to my reminder details.
With all the changes made, my new reminder now looks like this:
This will now remind me to call Tim Cook the next time I arrive at 1600 Pennsylvania Avenue, Washington, DC. This could be today, tomorrow, or in 6 months. Regardless, it will remember to remind me when I arrive.
So how does all this magic work? It’s actually quite simple. With GPS enabled, your device always knows where you are. iOS is constantly comparing your current location with any active reminders that are based on location. When it sees that you have breached a “geofence” that surrounds an address you are watching for in a reminder, it offers you the reminder. As a visual, the following shows what an invisible geofence around the White House might look like to iOS:
As soon as I pass through the blue perimeter, I will be reminded to call Tim Cook.