私のアプリには、オンラインデータベースからコアデータ要素を更新するNSOperationがあり、更新には数分かかることがあります。iPhoneの画面がロックされると、アプリはバックグラウンドモードになり、この更新は停止します。アプリを再度開いて更新を続行するため、スタックオーバーフローについて多くの検索を行い、次の情報を見つけました。
beginBackgroundTaskWithExpirationHandler
これは、アプリがバックグラウンドモードのときにもいくつかのタスクを続行できるようにするアップルのメソッドであり、私はこれを実行しています:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
UIApplication *app = [UIApplication sharedApplication];
UIBackgroundTaskIdentifier bgTask;
bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
[app endBackgroundTask:bgTask];
}];
}
そして今、アプリはバックグラウンドでタスクを続行し、すべてが正常に機能しているように見えるので、私の質問は、私が使用するこの方法は安全ですか?またはより良いモードがありますか?
ありがとう