Ich verwende den EKEventStore in meiner App. Ich nehme den Standardspeicher und registriere mich für EKEventStoreChangedNotification
, um benachrichtigt zu werden, wenn Änderungen am Kalender vorgenommen werden. Wenn jedoch eine Änderung vorgenommen wird, wird der Absender für die Benachrichtigung mehrere (5-10) mal aufgerufen, manchmal mit bis zu 15 Sekunden zwischen jedem Aufruf. Dies verwirrt meinen Code und macht die Arbeit mit diesen wesentlich schwieriger. Kann ich irgendetwas dagegen tun?
Danke
iOS7 EDIT: Es scheint so, als ob ab iOS7 dieses Problem verschwunden ist. Jetzt wird unabhängig von der Änderung im CalendarStore nur ein EKEventStoreChangedNotification
gesendet.
Dies ist ein Ergebnis genau der Art und Weise, in der die Benachrichtigungen gesendet werden und worüber sie tatsächlich berichten. Meiner Erfahrung nach können Sie erwarten, dass mindestens eine Benachrichtigung für eine Änderung an einem Element (Ereignis, Erinnerung usw.) und mindestens eine weitere für die resultierende Änderung an dem enthaltenen Kalender für dieses Element erhalten wird.
Ohne Ihren Code zu sehen und zu wissen, welche Änderungen vorgenommen werden, kann ich nicht besonders auf eine Antwort eingehen; Im Allgemeinen haben Sie jedoch zwei Möglichkeiten.
Die letztere Lösung ist meine bevorzugte Antwort und könnte etwa so aussehen (Threading-Bedenken vorübergehend ignorieren):
%Vor%Tags und Links objective-c iphone ios cocoa-touch ekeventkit