2

カレンダーのイベントを表示するアプリがあります。iCloud でユーザーのカレンダーに変更があるたびに更新したい。

ドキュメントは、イベントが追加/削除/変更されたときに EKEventStoreChangedNotification が送信されると主張しています。そして、私は時々それが事実であることに気づきました。ただし、通知がまったく送信されない場合もあります。3 分ごとに [EKEventStore refreshSourcesIfNecessary] を呼び出しますが、それでも変更は反映されません。アプリで変更を確実に検出できる唯一の方法は、カレンダー アプリに切り替えて、そこにイベントの変更が表示されるのを待ち (通常は数秒以内)、アプリに戻ることです。

もう1つ、iCloudカレンダーの「プッシュ」通知をオンにしています。

ここで何が起こっているのか分かりますか?なぜ一貫性がないのですか?そして、どうすればそれを一貫させることができますか?

ありがとう!

4

1 に答える 1

0

それが役立つかどうかはわかりませんが、私もこの問題に遭遇しました(EKEventStoreChangedNotificationに依存できると仮定して)...あなたが取ったアプローチで([EKEventStore refreshSourcesIfNecessary]thoを呼び出して、そのメソッドを呼び出した直後に一貫した結果が得られます)変更の通知 常に機能しているようです。

于 2013-02-14T13:16:44.973 に答える