長時間実行されるバックグラウンド タスクが完了した直後にアプリが中断されないのはなぜですか?
iOS 8 で実行されているアプリは、実行時間の長いバックグラウンド タスクを使用して、バックグラウンドに入ったときに中断されるのを回避します。すべて順調です。タスクが完了すると、アプリはバックグラウンド タスク完了ハンドラーを呼び出します。
[[UIApplication sharedApplication] endBackgroundTask:backgroundTask];
backgroundTask = UIBackgroundTaskInvalid;
ただし、 を呼び出すとbackgroundTimeRemaining
、40 秒の時間間隔が返されます。
[[UIApplication sharedApplication] backgroundTimeRemaining]
実際、アプリはタスクの終了後、少なくとも 20 秒間中断しません。
- なぜこうなった?
- アプリは常に完全な実行時間を受け取りますか?
- アプリの一時停止を早めることはできますか?