7

目覚まし時計プロジェクトに取り組んでいますが、すでに設定されている目覚まし時計を編集したいと思います。アラームを編集すると、アラーム時刻は更新されますが、を使用して送信する値putExtra()は変更されません。PendingIntent.FLAG_ONE_SHOTフラグを使用しています。

しかし、フラグを設定すると、PendingIntent.FLAG_UPDATE_CURRENTすべてのputExtra()値も変更されますが、問題は、停止ボタンをクリックするとfinish()、現在のアクティビティが再度呼び出されることです。

つまり、アクティビティを終了しようとすると、現在のアクティビティを終了しているときにボタンをクリックすると再び呼び出されます。私を助けてください。前もって感謝します。

4

2 に答える 2

7

AlarmManagerで PendingIntent を更新する私の好ましい方法は、キャンセルして再設定すること です
。キャンセルすることを忘れないでください: IntentFilter ) 2) 3) ... 他の設定を行います 4)新しい PendingIntent を提供します

AlarmManager.cancel(pendingIntent)
pendingIntent.cancel();
pendingIntent = new PendingIntent()
AlarmManager.set(...

于 2011-08-19T18:11:21.030 に答える