一連のビューを備えたカスタムモーダルダイアログとして実装した、カスタムのマルチステップアカウント設定を備えたCocoaアプリがあります。
問題は、バックグラウンド操作(URLのフェッチ)がスタックしているように見えることです。これは、アプリケーションがモーダルモードになっているためだと思います。
モーダルダイアログを開始するコードは次のとおりです。
[NSApp beginSheet:accountSetupController.window modalForWindow:self.window
modalDelegate:nil didEndSelector:NULL contextInfo:NULL];
[accountSetupController beginAccountSetup]; // this later launches the background operation
[NSApp runModalForWindow:accountSetupController.window];
NSApp endSheet:accountSetupController.window];
まず第一に、私の仮定は正しいですか?アプリケーションがモーダルで実行されている場合でも、バックグラウンド操作を続行する方法はありますか?
実際のバックグラウンド操作は私の管理下にはありません。これは、完了ブロックを取得する外部APIです。