2017-05-28 11 views
2

私は、アプリケーションデリゲートのapplicationWillTerminate機能にコードを書き込もうとしましたが、アプリを終了して読み込んだときに呼び出されていないことに気づいたので、applicationWillTerminateはアプリの終了時に一貫して呼び出されません。何が一体?iOSアプリが終了するたびにコードの実行を保証する方法はありますか?

アプリの終了時に一貫してコードを実行する方法はありますか?単純な要件のように思えますし、私のプロジェクトにとっては重要ですので、これが可能であることを願っています。

+0

アプリが実行されていないときにいくつかのバックグラウンドタスクを実行する場合は、「サイレントプッシュ通知」を使用します。 – pkc456

+0

アプリがバックグラウンドに入ったときにコードを実行します。 – rmaddy

答えて

2

applicationWillTerminateは通常呼び出されません。あなたのアプリが中断されようとしているときにメッセージが表示され、それが起こると、それ以上の警告なしに終了することができます。一時停止イベントを可能な終了として処理し、保存する必要があるすべてを保存する必要があります。

UNIX SIGTERMメッセージについて通知を受けることは可能ですが、私は肯定的ではありません。

+0

ありがとう!アプリが中断されようとしているときに送信されるこのメッセージをどのように入力して操作するのですか? –

+0

私は間違っていたように見え、アプリケーションデリゲートに送られるメッセージは 'applicationDidEnterBackground(_ :)'です。あなたのアプリケーションデリゲート以外のバックグラウンド通知に応答したい場合は、 'UIApplicationDidEnterBackground'通知に登録することもできます。 –

関連する問題