Android用のアラームアプリを作っています。ユーザーがアラームをスケジュールすると、アラームに到達するまでスレッドがカウントされ、アラーム音が鳴ります。
ただし、デバイスがロックされると (30 分後に画面がオフになると) 、カウント スレッドが停止し、再びロックが解除されると、それが数時間後であっても、終了した場所から続行されます。
それはかなり奇妙なアラームアプリになります. AlarmManager を調べましたが、アプリがまだ実行されている場合にのみアラームを発生させたいので、私の場合は適切ではないようです。アプリを終了すると停止するはずです。ただし、AlarmManagerのドキュメントには次のように記載されています。
注: Alarm Manager は、アプリケーションが現在実行されていない場合でも、特定の時間にアプリケーション コードを実行する場合を対象としています。通常のタイミング操作 (ティック、タイムアウトなど) では、Handler を使用する方が簡単で効率的です。
それが言及している「ハンドラー」クラスは、私が達成しようとしているものとはまったく異なるものを意図しているようです。
だから私はあなたに尋ねています:デバイスがロックされていても、どうすればスレッドを存続させ、カウントし続けることができますか? それとも別の方法がありますか?