アプリで特定のコードを 24 時間ごとに実行したいと考えています。
AlarmManager の使用方法は知っていますが、アプリが実行されていない場合にそのコードを実行したくないという問題があります。
アプリの起動時に実行したいのですが、最後の実行から24時間経過した場合に限ります。
24時間以上経過しても問題ありません
たとえば、ユーザーが初めてアプリを開くと、コードが実行されます。20分後に再度開くと、何も起こりません。24 時間以上後に開くと、コードが実行されます。
プログラムが開始された時刻をファイルに保存します。書き込み前にこれをチェックして、どれくらいの時間が経過したかを確認できます。
注: 少なくとも 24 時間間隔で実行したいタスクがある場合は、そのタスクが最後に実行された時刻が本当に必要です。たとえば、アプリケーションが 8 時間ごとに開かれる場合でも、アプリケーションを実行する必要があります。
Shared Preferences
Android プラットフォームが提供するストレージ オプションを使用して、最終アクセス情報を保存し、それに応じて対処してみませんか。詳細については、次のリンクを参照してください:ストレージ オプションの Android 開発者リファレンス