2009-12-08 5 views
7
TasKillerから

おかげで、私はシャットダウンの更新に信頼性の高い方法がAlarmManagerから私のAppWidgetに来ています!アンドロイド - AlarmManager回復

今、皮肉なことに、どうやってそのような出来事から回復しますか?これまでのところ、私はAlertsが復活したのは、電話機を再起動した後だけです。

私は私のアプリと私のウィジェットに属しているが、より良い方法があるよう様々なActivity#onCreateなど、いくつかの場所に回復コードを固執することができますか?

アラートがOKであれば何も

からAlarmManager#setRepeatingを実行することを検出しないようにする方法はありますか?

複数回実行しても問題ありませんか?

答えて

5

さて、ここでは皮肉なことに、どうすればこのようなイベントから復旧しますか?

私はシングルモルトのスコッチが助けと聞いたことがあります。これまでのところ、私は唯一のアラートのみ の携帯電話を再起動した後 を復活していることがわかり

。あなたはBOOT_COMPLETED放送Intentをフックし、アラームを再確立している場合のみです

タスクキラーは非常に徹底的ですが、BOOT_COMPLETEDのように、BroadcastReceiverがシステムブロードキャストを受信するのを止めることはできません。制御を取り戻し、アラームを再確立するために受信したい他の放送を見つけることを歓迎します。

アラートがOKであれば何も

は - AlarmManager#setRepeatingを実行することを検出していないためにそこに方法は何ですか?それとも、何度も何度もそれを実行するのに苦労しているのは ですか?

既存のアラームはcancel()です。したがって、可能な重複が懸念される場合は、cancel()現在のアラーム(アラームが存在しない場合は静かに失敗します)を設定してから、アラームを設定します。

+2

「キャンセル」する必要はありません。同じ保留中の予定でスケジュールを呼び出すと、スケジュールが自動的にリセットされます。あなたの助けをありがとうマーク、多くの感謝 – Bostone

関連する問題