アプリがフォアグラウンドにいる間だけ処理をする
アプリがフォアグラウンドにいる間だけ、何かを処理したいことってよくありますが、 ( インターバルタイマーみたいなやつ) UIApplicationDelegateのapplicationWillResignActive:だと、Notificationを引き出した時や、電話の着呼の状態でも呼ばれてしまい都合が悪いということで、おとなしく
- (void)applicationDidEnterBackground:(UIApplication *)application;
の方に停止処理を入れる事にしました。
applicationDidEnterBackground:を @optionalで追加し、AppDelegate.mの同メソッド内でイベントを伝播させるようにして無事に解決。
よくよく考えると、GCDのタイマーってバックグラウンドでは停止してるので気にしなくても良いような気はしますが、タイマーだけでなくバックグラウンドで解放しないといけないものもありますしということで。