0

アプリケーションがいつ終了したかを知る必要があります。applicationWillTerminate: がバックグラウンド/サスペンド状態から呼び出されることに依存できないことはわかっています。アプリケーションが終了すると、Snapshots ディレクトリ (Library/Caches/Snapshots) が変更されることに気付きました。その後のアプリケーションの起動時に、その変更時間を調べることができます。

applicationDidEnterBackground: または applicationWillResignActive: メソッドが起動する時間をマークしない理由を不思議に思われるかもしれません。アプリがバックグラウンドで費やす時間を数えたくありません。

これは機能していますが、これに頼ることができるのか、それともより良いアプローチがあるのか​​ どうか疑問に思いました(より良いアプローチをさせてください).

ありがとう!

4

1 に答える 1

0

終了する前に、アプリに送信されたSIGTERMシグナルをリッスンしてみます。残念ながら、シグナルハンドラーが実行できることには厳しい制限があります。ファイルを作成できるかどうかは思い出せませんが、次回起動時に作成日を確認できるので、まずは調べてみます。

于 2012-05-27T17:05:34.227 に答える