0
PendingIntent
のcancel()メソッドを呼び出すだけでいいのですが、なぜAlarmManager.cancel()メソッドが必要なのでしょうか?AlarmManager.cancel()メソッドを使用する必要がありますか?
PendingIntent
のcancel()メソッドを呼び出すだけでいいのですが、なぜAlarmManager.cancel()メソッドが必要なのでしょうか?AlarmManager.cancel()メソッドを使用する必要がありますか?
これは、アラームと保留中の意図が異なるためです。あなたのアラームは "x"時にあなたの保留中の意図を誘発するだけです。保留中のインテントをキャンセルしてもアラームはキャンセルしても、アラームはトリガーされますが、保留中のインテントがキャンセルされるため、アクションは発生しません。アラームをトリガーと考え、アクションとして保留中のインテントを考えてください。
私はPendingIntentをキャンセルすると、アラームも実行されませんでした。 –
とにかくアラームを起動する必要がありますが、保留中のインテントがキャンセルされた状態であるため、アクションは実行されません。保留中のインテントは、アラームだけでなく、通知などの他のものにも適用されます。そのため、アラームマネージャにもキャンセル方法があります。 – josemgu91
アラームがトリガされると、保留中のインテントがディスパッチされます。その場合、アラームマネージャーのビジネスは発生しません(保留中のインテントがキャンセルされたなどの理由でアクションが発生しない場合)。 – josemgu91