How to Create "Add to Calendar" Link on Web Page for iPhone

31.2k views Asked by At

Many calendaring programs (Outlook, iCal) support vCal for downloading event information and adding it to your calendar. Others can use the vCalendar microformat to extract data. Neither of these, however, seems to be supported on the iPhone.

Is there any functional equivalent that will allow me to list event information on a page and have a website visitor add the event to her calendar with a single click? Since Mobile Safari makes it super-easy to extract emails and phone numbers from web pages, it seems odd that there's no similar functionality for events.

4

There are 4 answers

3
Pascal On BEST ANSWER

Update:
Note that this is a very old answer. Since iOS 5 you can use EKEventStore to access calendar events and Mobile Safari will open .ics files in Calendar.


Original Answer
It's not possible, there is no API for the calendar on the iPhone, sadly. You can build an app that registers for the ical URL scheme, but you still won't be able to save the calendar entries to the calendar backend since there is no API (like e.g. for the AddressBook).

2
jeffehobbs On

As of iOS 5, if you create a http link to an .ics file, Mobile Safari will offer to open it up in Calendar.

0
Zsolt Normann On

One resolution could be (from iPhone OS 3.0):

  • estabilish a calendar server (webdav or caldav protocol), create accounts, events...
  • subscribe your iPhone Calendar to one of the accounts (eg. Settings->Mail, Contacts, Calendars->Add Account…->Other, Add CalDAV Account -> server, account details)
  • your web based app posts calendar entries into the adequate calendar server account

Alternatively use Google Calendar to post entries from your website, which can be easily synched to iPhone Calendar using CalDAV.

Another usefull link: http://blog.fosketts.net/2009/06/17/subscribe-internet-calendars-iphone-30/

0
Ali SadeghipourKorabaslo On

You can create your own ics file and host it on a public url or use free/paid services such https://calex.link or others.