If you would like to sync contacts and calendar entries wirelessly between your Mac and your iOS device(s) (such as iPhone, iPad, …), you can either subscribe to Apple’s “MobileMe” service at 79 € per year or you can manually set up sync solutions, e.g. using Google’s services. While “MobileMe” is certainly the much more convenient solution, it is also expensive.
I found it amazing that some of the relevant information to set up wireless address book and calendar syncing using the free solution was not available easily on the web. My requirements were:
Keep my address books and my calendars on my iPhone and on my Mac in sync without me having to push any buttons or connect any cables.
Here are the instructions that I was missing (using Mac OS X 10.6, iPhone OS 4.2.1):
Mac <-> Google
To sync your Mac’s ‘iCal’ calendar with Google, simply add an account in iCal’s preferences. If you have more than one calendar you need to add them using the silly dummy calendars (‘Stellvertreter’ in German) which adds an unnecessary second level and makes the calendar side bar look a bit uglier than needed, but it works.
To sync your address book, you will have to set it up in the Address Book preferences. You probably don’t have to sync manually as long as
~/Library/LaunchAgents/com.google.GoogleContactSyncAgent.plist
is created that will take care of automatic syncing between your Mac’s address book and your Google account. Don’t follow this advice (using cron), or your user mail system will be flooded with error messages because the (running) Google daemon will be launched over and over again.
iPhone <-> Google
In order to achieve that you can in principle follow these instructions. One extra thing that I only found out after a bit of googling was: In the iPhone settings > Mail, Contacts, Calendar > [Your Google account], I had to set “synchronize Mail” to “unlimited” in order to make the calendar entries appear that I had entered before setting up the sync.
One other thing that is worth noting: You can set up which calendars to sync to your iPhone by surfing to m.google.com/sync on your iPhone. You will have to switch to the English version (or it says that the service wasn’t available).