5

(s)を使用してファイルをダウンロードしNSOperation、それらを追加していますNSOperationQueueNSOperationQueueアプリがバックグラウンドで実行されると、が一時停止されます。キューがバックグラウンドで一時停止せず、次の操作を開始しない場合の回避策はありますか?

4

2 に答える 2

9

キューの実行中に、UIApplication beginBackgroundTaskWithExpirationHandler呼び出しを使用して、ダウンロードの実行を維持するバックグラウンドタスクを開始します。

私は通常、各操作を独自のbeginBackgroundTaskWithExpirationHandler呼び出しでラップし、次の操作をキューに入れてから、endBackgroundTaskその方法でキューを実行し続けます。

個々のバックグラウンドタスクは10分間の操作に制限されていることに注意してください。その後、iOSはアプリを一時停止します。

于 2012-12-13T10:14:38.513 に答える
0

-(void)applicationDidEnterBackground:(UIApplication *)application {

    __block UIBackgroundTaskIdentifier task = [application beginBackgroundTaskWithExpirationHandler:^{
        [application endBackgroundTask:task];
        task = UIBackgroundTaskInvalid;
    }];

}

于 2020-03-08T12:17:04.380 に答える