0

長時間実行されるバックグラウンド タスクが完了した直後にアプリが中断されないのはなぜですか?

iOS 8 で実行されているアプリは、実行時間の長いバックグラウンド タスクを使用して、バックグラウンドに入ったときに中断されるのを回避します。すべて順調です。タスクが完了すると、アプリはバックグラウンド タスク完了ハンドラーを呼び出します。

        [[UIApplication sharedApplication] endBackgroundTask:backgroundTask];
        backgroundTask = UIBackgroundTaskInvalid;

ただし、 を呼び出すとbackgroundTimeRemaining、40 秒の時間間隔が返されます。

[[UIApplication sharedApplication] backgroundTimeRemaining]

実際、アプリはタスクの終了後、少なくとも 20 秒間中断しません。

  • なぜこうなった?
  • アプリは常に完全な実行時間を受け取りますか?
  • アプリの一時停止を早めることはできますか?
4

1 に答える 1