電話で作成されたレコードをWebサーバーと同期するアプリがあります。
アプリにインターネット接続がない場合、アプリはすべてをローカルに保存し(Core Data)、インターネットが再び利用可能になったときに同期します。
これで、ユーザーは有効なユーザーケースシナリオを考え出しました...飛行機の中で(ネットワークなしで)レコードを作成しているとしましょう...すべてがローカルに保存されています。エアホステスが彼に電話のスイッチを切るように命じるまで、すべては順調です。アプリを使用している間、オフにするとすぐにオフになります。現在、データは失われています。アプリがバックグラウンドで動作している間、または電話がロックされているときでも、状態を保存しています。しかし、どうすればこれを保証できますか?
ユーザーが電話のスイッチをオフにした場合(ロックボタンを長押し)、バーをスライドする必要があり、デバイスのスイッチをオフにするまでに時間がかかります...そのため、状態を保存できる時間があります...どのデリゲートメソッドが呼び出されますかこの間?