iCloud and calendar alarms

When I’ve complained about iCloud in the past, it was because iCloud—or one of the apps that sync via iCloud—had failed to do what it was supposed to. In one case, I ended up with duplicate calendar entries; in another, some Address Book contacts refused to appear on my iPhone. Today I’m going to complain about iCloud working exactly as Apple intends. More perversely, I’m going to complain about a behavior that I think is correct.

Update 5/4/12
The behavior described in this post was due to a couple of choices in the Settings for Mail, Contacts, and Calendars. Joe Saponare’s comment explains the problem well.

I’m still not sure whether I made the choice to have iCloud sync manually (and have forgotten about it) or whether that was the default when I updated to iOS 5. I’ve changed my setting from Manual to Push and will be monitoring battery life to see if there’s a notable reduction.

Try this two-part experiment: First, make a calendar entry on your Mac1 for later today. Now pull out your iPhone and open the Calendar app.2 Move to today’s date if you’re not already there. The event you just added won’t be there at first, but soon you’ll see the little gear icon spinning at the top and a few seconds later the new event will appear. Great.

Calendar syncing

Now for the second part. Make a new calendar entry on your Mac for five minutes from now and give it an alarm to sound at the time of the event (0 minutes before). Now go to your iPhone3 and check your Twitter feed, play a round of SpellTower—do anything but open the Calendar app. Does the alarm sound when the five minutes have passed? No.

This is because calendar events are synced only when the Calendar app is open. There’s no automatic syncing every so many minutes. This is a deliberate choice by Apple and is, I’m sure, intended to save battery life. Changes to your calendar are relatively infrequent, and turning on the antennas periodically to look for new entries that are almost never there doesn’t make a lot of sense. Almost every time you want to know about a new entry, you’ll have the Calendar app open, and since that’s when the syncing happens, everything works out just fine.

Except when the new event has an alarm, and you don’t open Calendar sometime before the alarm is set to sound. For that one particular case, Apple’s decision on when to sync will fail you; you won’t get an alarm that you were supposed to.

I first noticed this—bug? anomaly? I don’t know what to call it—on Monday morning when I arrived at work and saw an iCal alert window on my screen for an Iridium flare that’d happened Sunday night. Why didn’t I get an alarm on my phone? I wondered. I pulled out the phone, launched the Calendar app, and moved to Sunday. No Iridium flare event. But then the syncing gear spun, the Iridium flare event popped into place, and light dawned. The script that puts the dates and times for a week’s worth of Iridium flare events into my calendar runs every Sunday morning. I hadn’t opened the Calendar app on my phone that Sunday, so there was no syncing and therefore no alarm Sunday night.

Luckily, this wasn’t an important alarm, and now that I know how syncing works, I’ll be sure to open the Calendar app on my phone every time I add an alarmed event on my computer.

Am I angry at Apple for choosing battery life over periodic syncing? No, I think it made the right choice, but it’s a choice that can bite you if you don’t know about it. I’ve seen plenty of complaints about iCloud over the past several months, but never about this particular behavior. If you didn’t know about it either, now you do.

  1. It doesn’t matter which calendar app you use, as long as it works with the iCal database and you’re connected to the internet for syncing with iCloud. 

  2. Again, it doesn’t matter which calendar app you use as long as it uses the built-in Calendar’s data. 

  3. I assume things work the same way on an iPad, but I don’t have an iPad and can’t test it. 

12 Responses to “iCloud and calendar alarms”

  1. Jaime says:

    This isn’t how mine works. It syncs for me without opening the calendar app on my iphone or ipad. The only syncing issues I’ve had where I’ve needed to open the calendar app are when I’m dealing with Google Calendar or a third party calendar app. Otherwise, my iCloud calendars sync reliably and fairly quickly…within 10 min. All without opening the iOS calendar app. I’m not sure why yours is not working.

  2. Dr. Drang says:

    Hmmmmm… As I wrote this piece, I wondered if someone was going to tell me that their experience was different, and sure enough, Jaime’s started off the comments with exactly that. I’ll have to play around with the settings to see if I can duplicate his experience.

  3. Dexter Ang says:

    Jaime’s experience is also my experience. Even a reminder notifies me without having to run the app first. The only iCloud data that doesn’t always push to my iPhone or iPad are bookmarks and iMessages.

  4. Joe Saponare says:

    On your iPhone, go to Settings: Mail, Contacts, Calendars: Fetch New Data.

    Turn Push On. If it was On, toggle it Off and then back On.

    Also, go to Advanced on the same screen, select your iCloud account, and make sure Schedule is set for Push.

  5. Dr. Drang says:

    Thanks, Joe! I don’t remember ever going to the Advanced page before. It’s set to Manual, which is obviously the reason my Calendars and Contacts don’t sync until I launch those apps. Is Manual the default setting, or did I make a stupid mistake months ago and erase it from my memory?

  6. Ben K says:

    On a related note, can someone explain the difference between the two “Push” settings that Joe describes?

    Each distinct account can be set to “Push”, “Fetch”, or “Manual”, yet there is also this global “Push” mode that can be set on or off. The account-level “Push” option remains available regardless of the global mode.

    Am I thick? I’ve never quite had my head around this. Seems very un-Apple-like.

    I am also flummoxed by similar seemingly-redundant settings for apps in Notification Center, but perhaps that’s a subject for a different thread.

  7. DirkKS says:

    When the iPhone 4S first came out, there was a rash of stories about poor battery life, and push synchonization was one of the places people were pointing fingers. I presume you read one of those stories and switched to Manual. Either Apple fixed the problem with 5.something or push was never the problem in the first place, but I have push on 2 calendars and 2 mailboxes and get perfectly good battery life.

  8. Niels K. says:

    As far as I know Push is the default setting.

  9. Angie B says:

    Thanks for the info! My iCloud account was set to manual which I would have never chosen, must be the default

  10. Ben K says:

    My question up there was not rhetorical. Does no one care to indulge me, or is my confusion shared by others?

  11. Dr. Drang says:

    I share your confusion, Ben, but I don’t need to know the answer. If I did, I would spend my time experimenting with the settings to see how they work rather than waiting for an unauthoritative answer in the comments section of a week-old post in a lightly-trafficked blog.

  12. Ben K says:

    Maybe I over-estimated your traffic. I didn’t mean to sound complainy! Just figured that the knowledgeable types might frequent this type of piece (esp. after being linked to my Marco et al.)