Na iPhone mi docela chyběla možnost synchronizovat jeho vnitřní kalendář s mými kalendáři z Google Calendar. Jde to nepřímo, pomocí iTunes a MS Outlook s iCal pluginem (alespoň jsem na něco takového narazil na netu), ale přeci jenom přímý způsob je přímý způsob, a tak jsem si napsal jednoduchou utilitku ics.

Vlastnosti:
- Synchronizuje všechny události za všech kalendářů - oběma směry
- Pracuje s jailbreaklym fw verze 1.1.3 a 2.0 (s jinými verzemi netestováno)
Požadavky:
- Nainstalovaný .NET Framework 2.0
- Nainstalované iTunes (testováno s verzí 7.6.1)
Instalace:
- Stáhnout tento zip (400 kB) a někam ho rozbalit. Novější verze k dispozici zde.
- Zkopírovat iTunesMobileDevice.dll (obvykle umístěno v c:\Program Files\Common Files\Apple\Mobile Device Support\bin\) do adresáře s ics.exe (místo z předchozího kroku)
- Je dobré mít nastaveno stejné časové pásmo v Google Calendar a iPhone - pozor na to, že v Google Calendar jsou dvě místa kde se nastavuje vybírá pásmo - první je pod Settings/Your current time zone. Pro nás důležité je ale nastavení v Settings/Calendars/[Calendar]/Calendar Time Zone. Pokud máte více kalendářů, je potřeba změnit nastavení pro každý zvlášť.
Jak synchronizovat:
- Připojit iPhone pomocí USB kabelu
- Ujistit se, že v iPhone není otevřena aplikace kalendář
- Spustit ics.exe
- Zadat email a heslo k vašemu Google Calendar účtu
- Stisknout tlačítko Synchronize
- Zkontrolovat navržené změny a potvrdit/odmítnout synchronizaci
- Toť vše
Omezení:
- Omezená podpora pro opakované události - opakované události z Google Calendar se zobrazí v iPhone, ale ne naopak (v Google Calendar se zobrazí pouze první výskyt takové události z iPhone). Editace a mazání opakovaných událostí z Google Calendar v iPhone nefunguje a změna bude stornována při příští synchronizaci.
- Není podpora pro zvuková upozornění (i když lze v iPhone upozornění manuálně přidat)
- Události přidané přes iPhone se vloží do standardního (obvykle prvního) kalendáře v Google Calendar
- V případě konfliktu (např. když uživatel upraví událost v iPhone i Google Calendar zároveň a poté synchronizuje), Google Calendar je brán jako autorita
- Synchronizuje pouze události v intervalu [Nyní - 3 měsíce; Nyní + 1 rok], maximálně pak 10000 událostí
- Tento program je poskytován bez jakékoliv záruky, tzn. neručím za to, že to nespálí váš iPhone nebo nesmaže všechny události z kalendáře, a podobně
Poděkování:
- manzana (.NET API for interacting with the Apple iPhone)
- managed-sqlite (A Managed SQLite implementation)
- Google APIs and Tools
Tags: .NET, Calendar, Google Calendar, Synchronization, iPhone
Hi,
Good job man !
I have a question… I actually use Mozilla Sunbird as my main Calendar app. It can create .ics files, and what I do now is a bit complicated : I upload my calendar at Google calendar, and launch tour app.
But I tried ManzanaUI, and would like to know where is located the .ics file… It seems pretty much easier in my case…
Thanks,
Maxoo.
Hi,
thanks. Unfortunately, there is no ics file in iPhone. In fact, calendar data is stored in SQL table (in a SQLite database file).
Ludek
Arg, is there any app converting .ics into an SQl db ?
Hi,
have a look at ical2sqlite utility. I haven’t tried that personally, though.
It looks like it’s for Ubuntu… and I’m a windows user…
If I miss, I apologize me, but please give me a link.
Yes, I’m afraid it is for linux. However, the C source code seems to be available, maybe it would be possible to compile it under Windows.
Too difficult for me… I think I’ll continue using your app. Maybe you can just see if it’s compilable, plz, cause I’ve no compiler installed yet… I’ve not looked at an C source code for 3 or 4 years…
[...] dolejsky.com Things good to know… « Two-way iPhone and Google Calendar synchronization [...]