1

アプリを閉じると、サーバーからデータをダウンロードするapplicationDidEnterBackgroundのコードを起動します。特定の状況では、これには最大1分かかる場合があります。その間にユーザーがアプリを再度開くと、ダウンロードが完了するまでアプリはスプラッシュ画面に表示されます。アプリケーションを再度開いたときにダウンロードをキャンセルする方法はありますか?

applicationDidEnterBackground内でperformSelectorInBackgroundを使用してバックグラウンドでダウンロードコードを実行しようとしましたが、アプリを再度開くまで実行が開始されませんでした。

4

2 に答える 2

1

アプリケーションがバックグラウンドに移行した後、高価なタスクを長時間実行することは許可されていませんが、探しているのは次のとおりです。

http://developer.apple.com/library/ios/DOCUMENTATION/UIKit/Reference/UIApplication_Class/Reference/Reference.html#//apple_ref/occ/instm/UIApplication/beginBackgroundTaskWithExpirationHandler

于 2012-04-12T23:33:03.347 に答える
1

アプリケーションを再度開いたときにダウンロードをキャンセルする方法はありますか?

NSConnectionを使用して非同期ダウンロードを実行している場合は、接続オブジェクトにキャンセルメッセージを送信できます。

于 2012-04-13T00:00:51.170 に答える