Event in iOS Kalender in der Vergangenheit eintragen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Event in iOS Kalender in der Vergangenheit eintragen

    Tach,

    ich habe hier eine App, die EKEvents im Kalender speichert mit EventKit.
    Der Benutzer gibt Titel und Datum an und dies wird automatisch gespeichert (kein EventKitUI).
    Funktioniert alles auch soweit.

    Jetzt habe ich aber ein komisches Problem beim Speichern von Events in der Vergangenheit. (Der Sinn sei jetzt mal nicht relevant ;) )

    Beispiel:
    Heute ist der 6.11.13
    Speicher ich ein Event am oder nach dem 5.10.13, passt alles.
    Speicher ich aber ein Event vor dem 5.10.13, wird dieses Event nicht im iOS Kalender angezeigt.
    Dies ist aber nur auf einem iPhone (iPhone 4, iPhone 5, iOS6, iOS7) der Fall. Im iOS7 Simulator oder auf einem iPod Touch 4G mit iOS6 speichert er auch die Events in der Vergangenheit.

    Hier mal der Code:

    Quellcode

    1. + (BOOL)addEventWithManager:(IWCheckListManager*)manager{
    2. EKEvent *event = [EKEvent eventWithEventStore:eventStore];
    3. EKCalendar *calendar = [eventStore defaultCalendarForNewEvents];
    4. event.calendar = calendar;
    5. event.notes = manager.notes;
    6. event.title = manager.header;
    7. NSDate *startDate = manager.date;
    8. NSDate *endDate = [startDate dateByAddingTimeInterval:3600];
    9. event.startDate = startDate;
    10. event.endDate = endDate;
    11. event.allDay = true;
    12. if(manager.eventID != nil){
    13. NSError *err;
    14. EKEvent *e = [eventStore eventWithIdentifier:manager.eventID];
    15. //BOOL success =
    16. [eventStore removeEvent:e span:EKSpanThisEvent error:&err];
    17. }
    18. NSError *error = nil;
    19. BOOL result = [eventStore saveEvent:event span:EKSpanThisEvent commit:YES error:&error];
    20. //NSLog(@"%@",error);
    21. manager.eventID = [event eventIdentifier];
    22. }
    Alles anzeigen


    Ich habe auch testhalber diesen Code probiert: gist.github.com/martinsik/5115383
    Mit diesem geht es aber auch nicht bzw. das gleiche Verhalten

    In der Doku finde ich auch nichts dazu, dass dies nicht gehen sollte.

    Hatte schonmal jemand das Problem oder einen Hinweis?

    lg
    Marco
    Knowing is not enough, we must apply.
    Willing is not enough, we must do.
  • Ok falls es jemanden interessiert:

    In den Systemeinstellungen -> Mail, Kontakte, Kalender im Reiter 'Kalender' gibt es einen Menü-Punkt 'Sync'. Dieser steht Default auf 'Ereignisse 1 Monat zurück'.
    Diese Menüpunkt gibt es am iPod nicht.

    Und mir ist der Punkt auch noch nie aufgefallen ^^
    Knowing is not enough, we must apply.
    Willing is not enough, we must do.