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 아닌 경보 유형의 경우 시스템 절전 모드에서) 건너뛴 반복이 가능한 한 빨리 전달됩니다. 그 후, 미래의 경보는 원래 일정에 따라 전달됩니다; 시간이 지남에 따라 표류하지 않습니다. 예를 들어 매시간 맨 위에 되풀이 알람을 설정했지만 전화가 7:45부터 8:45까지 잠들어 있으면 전화가 깨어나자마자 알람이 전송되고 다음 알람은 9:00에 전송됩니다.
애플리케이션이 적어도 특정 시간 간격이 항상 경보 사이에 경과하도록 보장하기 위해 배달 시간이 드리프트되도록 하려는 경우, 각 경보 배달을 처리할 때 일회성 경보를 사용하여 다음 알람을 직접 예약하는 것이 좋습니다.
<p class="note"><b>Note:</b> 는 API 19를 기준으로 반복하는 모든 알람이 비활성입니다. 애플리케이션에 정확한 배달 시간이 필요한 경우 위에서 설명한 대로 매번 다시 예약하여 일회성 정확한 경보를 사용해야 합니다. API 19보다 이전인 레거시 애플리케이션 targetSdkVersion
은 반복 알람을 포함하여 모든 알람을 정확하게 처리합니다.
앱 대상 지정 Build.VERSION_CODES#S
은 알람 수를 키Intent#EXTRA_ALARM_COUNT
와 함께 제공하려는 경우 이 알람을 설정하는 데 사용되는 플래그 PendingIntent#FLAG_MUTABLE
PendingIntent
를 설정해야 합니다.
에 대한 android.app.AlarmManager.setRepeating(int, long, long, android.app.PendingIntent)
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 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)