SyncCal
Sync and share iOS/Android calendars with Google Calendar
Stacks Image 9
Screen Shot 2014-01-02 at 00.46.37
SyncCal allows you to sync and (if you want) share your iOS calendars (e.g. Outlook/Exchange calendars) via Google Calendar. E.g. if you would like to share your work calendar with your family, you can do it this way. And if you (or your employer) doesn't want the events' details to be uploaded to Google Calendar, you can only upload empty events instead, so that your family knows at least the times of your events.

Just do the following:
  1. Install SyncCal (the paid version or a free version)
  2. Enter your Google Calendar account. If you don't have a Google Calendar account yet, you can get one for free on http://calendar.google.com.
  3. Select which calendar(s) should be synced. You can sync all kinds of iOS calendars, e.g. Microsoft Exchange calendars, Outlook calendars and CalDAV calendars.
  4. Then tap the "Start" button. SyncCal will create new calendars with the same names in Google Calendar and copy your selected iOS calendars into them. It will also keep them current when you enter new events in the iOS calendar (or when you receive new events e.g. from the company's Exchange server).
  5. Open http://calendar.google.com on your computer. You should see the new calendar that contains your iOS events. Using the various sharing functions of Google Calendar you can share this calendar privately, publicly or you can even embed it in a web page. Here you can find further information: Share your calendar
Stacks Image 20444

Sync direction


SyncCal can sync events from iOS to Google Calendar so that the iOS calendar isn't modified. Only changes that are made in the iOS calendar are copied to Google Calendar, but changes that you make to the events in Google Calendar are ignored. This means the iOS calendar is only read but not modified.

Screen Shot 2014-01-02 at 00.10.22

But SyncCal can also sync in both directions. I.e. after the initial sync, which copies your iOS events into Google Calendar, you can also add, modify and delete events in Google Calendar and these changes will be synced back into your iOS calendar.

Screen Shot 2014-01-02 at 00.11.10

Event details


SyncCal can either sync all details of your events (i.e. the title, location and description and a few other fields) to Google Calendar

Screen Shot 2014-01-02 at 00.21.00

or it can sync only the times of your events (so that Google Calendar displays "(No title)":

Screen Shot 2014-01-02 at 00.20.45

This might be useful if you would like to sync your work calendar with Google Calendar but your employer doesn't allow event details to be synced with Google. If your employer allows you to at least sync the times, then you can use this function to sync your events as empty events so that others can at least see when you have an event but not what kind of event it is.

Remarks


SyncCal can sync only a limited time range of your iOS calendar which can be configured. It can sync up to two years of your past and future iOS events with Google Calendar.

Recurring events are synced as a series of single events. I.e. if you have a recurring event in iOS, it will appear as several single events in Google Calendar. So you will see the same events at the same time in Google Calendar that you also have in the iOS calendar. The only disadvantage is that you cannot delete or modify all events of such a recurring event at the same time in Google Calendar. But you can certainly still do that in the iOS calendar, because the event will still be a recurring event in iOS.

The automatic background sync checks about every 30 minutes if you modified any events in the iOS calendar and will then try to copy these changes into Google Calendar. However to sync in the opposite direction, i.e. from Google Calendar to iOS, you will have to start SyncCal and tap "Start".

SyncCal asks iOS to be started every 30 minutes but iOS decides on its own how often it is really started. To improve this SyncCal now uses push notifications to make it sync more reliable in the background. If you would like to see when it was started, start the "Settings" app and turn "SyncCal", "Debug functions" on. A new menu "Sync log" should appear in SyncCal afterward. Using this menu you can see when and how often the background sync was performed. If you stop the app using the task manager (by pressing the home button twice) it won’t be able to sync in the background any more afterward.

The time, title, location, description, reminders and free/busy status of an event are synced. Attendees are not synced yet.

When syncing from Google Calendar to iOS, the iOS sync time range must be the same or larger than the time range SyncCal syncs. E.g. if you configured SyncCal to sync "+/- 1 month", then you have to configure the iOS calendar to sync "+/- 1 month" or more, too. You can configure it in the "Settings" app under "Mail, Contacts, Calendars", "Calendars", "Sync". If you don't do this, SyncCal will try to warn you (but this can fail) but the following can happen: SyncCal downloads an event from Google Calendar and saves it into the iOS calendar. But because the iOS calendar's time range is too small (e.g. SyncCal syncs 2 months, but iOS syncs only 1 month and the event is older than 1 month), the iOS calendar erases the event. It erases the event that SyncCal just saved into the iOS calendar. That means the next time SyncCal syncs, it sees that the event has been erased and erases it in Google Calendar, too. Because it thinks that you erased the event. It cannot know that the iOS calendar erased the event by itself. That's why it is important to configure the sync time range of the iOS calendar in the "Settings" app correctly. However this problem can only occur when syncing from Google Calendar to iOS. It cannot happen when only syncing from iOS to Google Calendar.

Sometimes the "calendarIdentifier" of iOS calendars change. Usually SyncCal uses the "calendarIdentifier" to know which calendar(s) should be synced. If the calendar cannot be found by its "calendarIdentifier" any more, SyncCal tries to find the calendar again by its name and color. So you have to ensure that the name and color of the calendars that you have selected for syncing are unique.


Expert functions


There are some settings regarding SyncCal in the "Settings" app under "SyncCal". There you can turn "Expert functions" and "Debug functions" on, which show additional menu entries in the app. They are only intended for advanced users and are not officially supported. However using the "Expert settings" you can also sync an iOS calendar with an existing Google calendar instead of creating a new one. This will result in both calendars being merged on the initial sync, i.e. all events will be copied from one calendar into the other and vice versa. If both calendars already contain the same events, they will be duplicated afterward, because all events from calendar A will be copied into calendar B and all events from calendar B will be copied into calendar A. Afterward this initial sync the sync will work normally, i.e. it will only sync changed events.