0

私のアプリはバックグラウンド フェッチを実行して一部のデータを更新します。私の最初のView ControllerのviewDidLoadメソッドで、アプリがバックグラウンドフェッチで実行されているかどうかを検出したいですか?

これを使用してアプリの状態を確認するのは非常に簡単です。

if ([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) {
    return; // have a breakpoint here <----
}

しかし、何らかの理由でアプリを正常に起動しても、プログラムがこのブレークポイントに到達することがあります。つまり、applicationStateが返されますUIApplicationStateBackground。バックグラウンドフェッチが実行されている瞬間にアプリの起動が発生するか、そのようなことはありますか?

viewDidLoadアプリがバックグラウンド モードで実行されているときにメソッドでコードを実行したくないため、このifブロックが必要viewDidLoadです。

4

1 に答える 1