1 つの質問と 1 つの問題: 次のコードがあります。
- (void) registerForLocalCalendarChanges
{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(localCalendarStoreChanged) name:EKEventStoreChangedNotification object:store ];
}
- (void) localCalendarStoreChanged
{
// This gets call when an event in store changes
// you have to go through the calendar to look for changes
[self getCalendarEvents];
}
これらのメソッドは、メソッド getCalendarEvents (コールバック内) を含む CalendarEventReporter と呼ばれるクラス/オブジェクトにあります。
2 つのこと: 1) アプリがバックグラウンドにある場合、コールバックは実行されません。それをさせる方法はありますか?2) アプリをフォアグラウンドに戻すと (デバイスのカレンダーを変更した後)、デバッグ ウィンドウまたはデバイスにエラー メッセージが表示されずにアプリがクラッシュします。私の推測では、コールバックを含む CalendarEventReporter オブジェクトがガベージ コレクションされていると思われます。それは可能ですか?クラッシュの原因について他に考えられることはありますか? または、エラーメッセージを表示する方法は?