アプリに登録した URI スキームを介して Web から開始できるアプリケーションがあります。URI に応じて、さまざまなビュー コントローラーを開きます (AppDelegate で rootViewController を設定することにより)。各View Controllerは、初期化時にサーバーから初期化データを非同期に取得します。
私の問題は次のとおりです。サーバーの応答が遅く、アプリケーションを終了してアプリケーションを再度入力すると (新しいビュー コントローラーが開かれる)、最初のビュー コントローラーがまだバックグラウンドに存在し、その要求に対するサーバーの応答を受信します。送った。これにより、最初のビュー コントローラーがフォーカスされていなくても、最初のビュー コントローラーによってアラートが表示される可能性があります。
これは、viewDidDisappear: メソッドでフラグを設定することで修正できます。しかし、この種の処理はコードを台無しにするので、どうにかして AppDelegate からビュー コントローラーを停止できれば、もっといいでしょう。または、少なくとも、フォアグラウンドにある場合にのみアラート ビューが表示されるようにします。これらのいずれかを行う方法はありますか?