2009-11-25 5 views
0

Je suis au milieu de la création de l'application de calendrier. pour iphone. Je reçois des événements d'agenda à partir de calendriers google (sans étendre la récurrence) Puis essayé d'étendre les événements de récurrence en écrivant des codes à partir de zéro. J'ai obtenu le format iCalendar à partir du Web, par exemple le suivant:expansion des données de récurrence de iCalendar

http://www.kanzaki.com/docs/ical/rrule.html

mais l'expansion des événements de récurrence à partir de zéro ressemble à une mauvaise idée cette erreur trop compliquée sujette. Donc, est-ce que quelqu'un sait où trouver l'algorithme pour "expansion des événements de récurrence"? Il préfère l'objectif-c mais Java et les langues sont OK. (J'ai essayé de regarder Sunbird mais je n'ai pas pu bien analyser)

Veuillez nous aviser!

Katsumi

Répondre

3

Toute raison pour laquelle vous ne demandez pas Google Agenda pour le développer pour vous? Certes, cela signifie plus de données, mais au moins, vous saurez que vous avez les mêmes résultats que Google Calendar.

Vous pouvez pouvez utiliser ical4j mais j'ai personnellement eu quelques problèmes de mise en œuvre, en particulier en termes d'utilisation du fuseau horaire par défaut du système.

(En général, mon conseil serait d'éviter d'écrire une application de calendrier du tout - calendrier est cauchemardesque compliqué.Une raison pour écrire un remplacement pour le calendrier de l'iPhone "Vouloir en savoir plus sur le calendrier" est une raison parfaitement valable Bien que vous embrassiez la folie à ce point.)

+0

Merci pour votre commentaire Jon! Eh bien, la raison de traiter avec l'événement récurrent en expansion sur le côté de l'iPhone est que l'application. besoin de soutenir la création locale d'événement de récurrence. En outre, il doit prendre en charge les fonctions de calendrier hors ligne. Deux exigences ensemble rendent l'expansion locale gênante des événements de récurrence ... Je vois quelques applications de calendrier d'iPhone soutenant cette fonctionnalité, je me demande comment les créateurs de ces applications ont fait. Katsumi – Katsumi

+0

@Katsumi: C'est assez juste. Il se pourrait qu'il existe des bibliothèques qui supportent cela, que vous pouvez utiliser à partir d'Objective-C, mais cela dépasse de loin mon domaine d'expertise. Tout ce que je sais, c'est que c'est une zone diaboliquement compliquée :( –

+1

+1 pour "embrasser la folie" :) –