" />

Google Calendar speaks CalDAV to the iPhone

When Apple announced that the iPhone OS 3.0 would fully support CalDAV with SSL, I was excited to see if this, combined with my Google account, could take over and serve my personal calendar and email needs, which have been provided by MobileMe from the day it launched last year.

Google has already had push synchronization for a while by means of Microsoft’s ActiveSync technology, essentially the same as Exchange. For many, the iPhone’s limit of allowing only one Exchange account to be configured at a time means this is not an option should we wish to use our iPhones in a corporate environment.

Though MobileMe still provides much more on the level of integration and simplicity, especially if one owns multiple Apple computers and/or an iPhone, the Google offerings are starting to catch up. I’d like to be able to use my Google calendar exclusively (outside of my company’s Exchange) and already share it with other family members, and view their shared calendars as well.

While the Google mobile web apps work well when connected to an Internet connection, they are useless if you’re trying to access your calendar in an underground parking garage or in an elevator or some other place where 3G is blocked and there is no wifi. Having a native app seamlessly integrate my Google Calendar and Gmail information to the iPhone’s local storage, for me, is priceless.

With a little Googling (pun intended), I have figured out how to do just this, and initially it seems to be working quite well using the new CalDAV support in iPhone OS 3.0. Though the synchronization between the iPhone and Google is not quite as fast over CalDAV as either Exchange or MobileMe syncing, (and from my understanding CalDAV is not a push service) it’s not severely delayed either.

If I create an appointment on my iPhone using the Calendar app, then log in to Google Calendar on on the web to view my calendar, the appointment has already synced up. If I make an appointment on Google Calendar from the web, it might not show up in iPhone’s Calendar for 10 minutes or so. I can also close the Calendar app and reopen it, which forces the app to resync with Google.

Here are the steps and settings I’ve used to get this working very well.

On your iPhone running OS 3.0, open the Settings app, tap on “Mail, Contacts, Calendars”, then on “Add Account”, then on “Other”, and finally on “CalDAV Account”.

I used the name “www.google.com” for the server, my full Gmail address and password for the account information, and I called the account “Google Calendar” in the description field (you can type whatever makes sense for you as a description).

I tapped on “Next” at this point, and it verified the settings and enabled the account.

I’ve read several reports where people have said it failed on the verification, and they had to manually adjust the advanced settings to enable SSL on port 443. I didn’t have to manually change any settings, so this may or may not be resolved by now.

Regardless, under Advanced Settings, the “Use SSL” should be enabled, the port should say “443“, and the Account URL should read “https://www.google.com:443/calendar/dav/username@gmail.com/user“. This is what my settings are set to by the automatic configuration, and are what other users are also reporting works.

With these steps, you’ll be able to access your Google Calendar wirelessly over-the-air, make, edit, and delete calendar events, and have these changes replicated fairly quickly back up to Google’s servers, all without having to fork out nearly $100/year for Apple’s MobileMe service, and without having to give up corporate Exchange access for Google’s ActiveSync service. Though MobileMe and Exchange are so much more than just calendar syncing, the iPhone’s support for CalDAV will solve many people’s scheduling needs.

Continue reading:

TAGS: , , , ,




  • Dude, caldav it way too limited and with iPhone 3.0 google offers free exchange support. Caldav allows you to only sync your primary calendar from google calendar and does not allow invites. Exchange syncs all your google calendars in real time via push.

    http://www.google.com/support/mobile/bin/answer.p

    This link lists the how-to. With the snow leopard update this fall, macs will also be able to use this feature to sync all your calendars.

    • Hi Bob, and thanks for the comment.

      Yes, I know about Google Sync using the Exchange connection, but as I mentioned in the second paragraph, the iPhone only allows you to use a single Exchange account at a time. Many of us use our iPhone in the corporate environment and need to use it with our company's Exchange environment.

      Though calDAV is much more limited, it provides much more functionality and opens up another possibility than before it was supported. 😉

      Also, Macs are currently able to sync iCal to all their Google Calendars now using this same calDAV method, so it's my hope that a future iPhone update may enable multiple calendar sync.

  • i use our company's exchange account so i'm in the same boat. my iCal and Google calendar sync up right now. I can't wait for the day all this stuff is sorted out and we can just get down to business.

    • Thanks for your comment. I agree with what you said. I think the iPhone is an amazingly capable device and has made great advances in feature set. However, I also think that as smartphones become the norm, and the expectation of always being connected to every form of communication we have grows, our demands on mobile devices also grows.

      From my experience, our demands grow at a quicker rate than the device's feature sets do. But these demands drive better products. Every day someone figures out some new way to add value to the iPhone. It's amazing! 🙂

  • Interesting post! It works on my 1st gen iPhone. However, only my primary calendar, not others that I have made and share. Hmmm…. any ideas?
    Great blog, BTW.

    • You're right, bjbk, and I should have mentioned that in my post. Thanks for bringing it up.

      At this time the iPhone only syncs with your primary Google calendar. Though I wouldn't be surprised if an update will add the feature to select additional calendars if desired, since this functionality already exists in OSX's iCal application, which Calendar is loosely based off of. The CalDAV spec clearly allows for multiple calendars per account, so I see no reason why the iPhone wouldn't be able to support this in the future.

      Thanks for your comment!

      • I found a way to do it here. http://is.gd/1bz98 it is in the MobileMe support site. Basically, send the URL to yourself in an email and click to subscribe.
        Cheers!

  • Josh

    Hmm. Well I followed the steps, got the "account verified," but then… nada. No sync. Will experiment some more…

  • Josh

    Never mind, I deleted the account, set it up again, and now it's working just fine. Hm. Who knows? But thanks for the info!

    • Glad you got it to work! Thanks for the comment.

  • So, as a person who has been using Mobile Me for syncing my Calendar with Multiple calendars on my iCal app and my contacts through the Address book, would I see the same information moving back and forth between my iMac, iPhone and Google Calendar/Contacts, I was previously a Treo user and I am a little gun shy to make the move and potential mess up my information.

    • theatom1, I know your hesitation. I too have been using MobileMe to keep everything in sync and love the fact that "it just works!"

      So far, since I've enabled Google Calendar sync over CalDAV on my iPhone, I've been able to enjoy the same type of sync between my Mac, my iPhone, and Google's web interface. My iPhone is able to add, delete, and edit items off my Google calendar in real-time, over the air, and I use iCal on my Mac to do the same, since iCal can also use CalDAV calendars. This has replaced my MobileMe calendar. I've had to make one concession though: since the iPhone's CalDAV only supports your primary Google calendar at this time, I had to consolidate my four MobileMe calendars into a single Google calendar.

      It's unfortunate that I cannot keep various types of appointments on different calendars, but for me the pros of having my Google calendar available OTA out-weighs the benefits of multiple calendars. Others may disagree on this point, and for them, the iPhone's CalDAV may not be a viable option yet.

      Keep in mind though, that this article only describes the ability to sync your CALENDAR data to Google. This will not do anything for your contacts and other information that MobileMe syncs, such as Bookmarks between Safari and MobileSafari. I have yet to find an adequate solution to keeping my iPhone's contacts in sync with my Google contacts over-the-air without requiring me to connect my iPhone to my computer.

      Good luck, and thanks for the question!

      • Hi,

        I've not tried this yet, but why not add a 2nd CalDev entry to get a 2nd calendar? (I assume you will be able to modify the caldev url for the 2nd calendar google calendar).

        The 'Sync In A Blink' app from the App Store is great for sync'ing your iPhone contacts with Google Contacts – I have been using Google Sync for Calendar but Sync In A Blink for Contacts because it supports groups and I have all my contacts sorted into loads of different groups.

        Thanks,

        Ian

        • Hey Ian, thanks for the comment, and tip about Sync In A Blink. I'm going to take a look at this app, since I also use Google Contact groups and don't want to loose them. Also, not sure if adding a second CalDav account will work, but I'm going to give it a shot, and if it does, I'll post an update!

  • blane64

    No joy here. I, too, have a corporate acct that occupies my sole Exchange slot, so I was excited. I cannot get anything to verify. I will delete and try again.

    • blane64, sorry you haven't been able to get this to work yet. I would suggest checking under Advanced settings to verify that the URL looks exactly like this, “https://www.google.com:443/calendar/dav/username@… and that "Use SSL" is enabled. Let us know if you get it to work!

    • blane64, sorry you haven't been able to get this to work yet. I would suggest checking under Advanced settings to verify that the URL looks exactly like this,

      Thanks. Great stuff.

      • Glad it worked for you, thanks for the comment!

    • Evilping

      Hi thanks for this tip… Working great…!! Any solution for the google contact without using the exchange!?

      • The 'Sync In A Blink' app in the App Store.

        • I'll have to check that app out! Thanks!

      • I'm glad it worked for you! I'm also looking for a way to sync my iPhone contacts with my Google contacts, over the air without using the Exchange account. I'm going to look at Sync In A Blink as recommended by ichilton in a comment below. If it works, I may write a review for a later post.

      • I'm glad it worked for you! I'm also looking for a way to sync my iPhone contacts with my Google contacts, over the air without using the Exchange account. I'm going to look at Sync In A Blink as recommended by ichilton in a previous comment. If it works, I may write a review for a later post.

    • Jose

      I get the sync from google to the iphone but what I have on my iphone wont or has not synced to Google been waiting more than 10 minutes

      • Try deleting the CalDAV account and setting it back up. Mine syncs pretty quickly when I add an appointment on my iPhone. Within about 5 minutes it's on my Google Calendar if I view it on the web.

    • Hi,

      "and from my understanding CalDAV is not a push service".

      Thats right, but the Darwin CalendarServer already supports XMPP PubSub for CalDAV collections. This adds the push facility to CalDAV environments. Hopefully Google is going to support that (after all they already have XMPP infrastructure 😉

      BTW: can't you connect secondary Google calendars using the calendar-id? (can be found in the web interface), Eg using such a URL:
      https://www.google.com:443/calendar/dav/CALID@gma

    • "BTW: can't you connect secondary Google calendars using the calendar-id? (can be found in the web interface), Eg using such a URL:
      https://www.google.com:443/calendar/dav/CALID@gma

      This is a good tip, I haven't yet tried this. I will soon, and post an update if I can get it to work! Would be awesome if it does!

      • meesterzeegar

        Keen to see if anyone has got the secondary sync thing working. Anyone?

      • Raghu

        Just found this yesterday, life is so much better now for me that I can use CalDav for secondary calendars.
        http://www.atnan.com/2009/6/19/configuring-multip

    • confused

      How do I find my Google Calendar ID??? I need the link mycalendar@group.calendar.google.com where is this, i've looked all over settings 🙁

    • Nikolaus

      How do I sync my existing calenders to google calendars still using the different calendar-tags I've given on my apple / iphone (private, business,…).
      The sync obviously is only working for the calender which is in the created iphone-exchange account?!

      How is the sync between the contacts working? Is this a two way snyc or is the iphone i.g. "overrulling" the gmail account?

    • Benwah

      I am having trouble with my iphone calendar updating when I make changes on google calendar from a desktop. The Iphone to google calendar is no problem. I waited more then 10 minutes. I have to manually delete events on my iphone calendar that I already deleted on my google calendar. Hope that makes sense.

    • Pingback: How to Sync Google Calendar With iPhone Calendar()