私のアプリはバックグラウンド フェッチを実行して一部のデータを更新します。私の最初のView ControllerのviewDidLoad
メソッドで、アプリがバックグラウンドフェッチで実行されているかどうかを検出したいですか?
これを使用してアプリの状態を確認するのは非常に簡単です。
if ([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) {
return; // have a breakpoint here <----
}
しかし、何らかの理由でアプリを正常に起動しても、プログラムがこのブレークポイントに到達することがあります。つまり、applicationState
が返されますUIApplicationStateBackground
。バックグラウンドフェッチが実行されている瞬間にアプリの起動が発生するか、そのようなことはありますか?
viewDidLoad
アプリがバックグラウンド モードで実行されているときにメソッドでコードを実行したくないため、このif
ブロックが必要viewDidLoad
です。