AlarmManager.SetRepeating(AlarmType, Int64, Int64, PendingIntent) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
繰り返しアラームをスケジュールします。
[Android.Runtime.Register("setRepeating", "(IJJLandroid/app/PendingIntent;)V", "GetSetRepeating_IJJLandroid_app_PendingIntent_Handler")]
public virtual void SetRepeating (Android.App.AlarmType type, long triggerAtMillis, long intervalMillis, Android.App.PendingIntent operation);
[<Android.Runtime.Register("setRepeating", "(IJJLandroid/app/PendingIntent;)V", "GetSetRepeating_IJJLandroid_app_PendingIntent_Handler")>]
abstract member SetRepeating : Android.App.AlarmType * int64 * int64 * Android.App.PendingIntent -> unit
override this.SetRepeating : Android.App.AlarmType * int64 * int64 * Android.App.PendingIntent -> unit
パラメーター
- type
- AlarmType
アラームの種類。
- triggerAtMillis
- Int64
(アラームの種類に応じて) 適切なクロックを使用して、アラームを最初にオフにする時間 (ミリ秒単位)。
- intervalMillis
- Int64
アラームの後続の繰り返し間のミリ秒単位の間隔。
- operation
- PendingIntent
アラームがオフになったときに実行するアクション。通常は 〘 から PendingIntent#getBroadcast
IntentSender.getBroadcast()
来ています。
- 属性
注釈
繰り返しアラームをスケジュールします。 <b>注:タイミング操作(ティック、タイムアウトなど)の場合、使用 android.os.Handler
する方が簡単で効率的です。</b> 同じ IntentSender に対して既にアラームがスケジュールされている場合は、最初に取り消されます。
同様 #set
に、アラームが自動的に繰り返される期間を指定することもできます。 このアラームは、明示的に削除 #cancel
されるまで繰り返し続けます。 指定されたトリガー時間が過去の場合、アラームは直ちにトリガーされ、過去のトリガー時間が繰り返し間隔に対して相対的な距離に応じてアラームカウントされます。
アラームが遅延した場合 (たとえば、_WAKEUP以外のアラームタイプの場合など)、スキップされた繰り返しはできるだけ早く配信されます。 その後、将来のアラームは元のスケジュールに従って配信されます。時間の経過と同時にドリフトすることはありません。 たとえば、1 時間ごとに一番上に定期的なアラームを設定したが、電話が 7:45 から 8:45 までスリープ状態だった場合、電話機が目覚めたらすぐにアラームが送信され、次のアラームは 9:00 に送信されます。
アプリケーションで、少なくとも一定の時間間隔がアラーム間で常に経過することを保証するために配信時間のずれを許可する必要がある場合は、1 回限りのアラームを使用して、各アラーム配信を処理するときに次のアラームを自分でスケジュールします。
<p class="note"><b>Note:</b> as api 19, all repeating alarms is inexact. アプリケーションで正確な配信時間が必要な場合は、上記のように毎回スケジュールを変更して、1 回限り正確なアラームを使用する必要があります。 API 19 より前のレガシ アプリケーション targetSdkVersion
では、繰り返しアラームを含むすべてのアラームが引き続き正確に処理されます。
アラームBuild.VERSION_CODES#S
数をキーIntent#EXTRA_ALARM_COUNT
と共にPendingIntent
指定する場合は、このアラームの設定に使用するフラグPendingIntent#FLAG_MUTABLE
を設定する必要があります。
の Java ドキュメントandroid.app.AlarmManager.setRepeating(int, long, long, android.app.PendingIntent)
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。
適用対象
こちらもご覧ください
- Handler
- <xref:Android.App.AlarmManager.Set(Android.App.AlarmType%2c+System.Int64%2c+System.Int64)>
- <xref:Android.App.AlarmManager.SetExact(Android.App.AlarmType%2c+System.Int64%2c+System.Int64)>
- <xref:Android.App.AlarmManager.SetWindow(Android.App.AlarmType%2c+System.Int64%2c+System.Int64%2c+System.Int64)>
- Cancel(PendingIntent)
- SendBroadcast(Intent)
- <xref:Android.Content.Context.RegisterReceiver(Android.Content.BroadcastReceiver%2c+Android.Content.IntentFilter)>
- FilterEquals(Intent)