Idioma

AlarmManager.SetInexactRepeating Método

Definição

Agende um alarme repetido que tenha requisitos de tempo de gatilho inexact; por exemplo, um alarme que se repete a cada hora, mas não necessariamente na parte superior de cada hora.

[Android.Runtime.Register("setInexactRepeating", "(IJJLandroid/app/PendingIntent;)V", "GetSetInexactRepeating_IJJLandroid_app_PendingIntent_Handler")]
public virtual void SetInexactRepeating(Android.App.AlarmType type, long triggerAtMillis, long intervalMillis, Android.App.PendingIntent operation);
[<Android.Runtime.Register("setInexactRepeating", "(IJJLandroid/app/PendingIntent;)V", "GetSetInexactRepeating_IJJLandroid_app_PendingIntent_Handler")>]
abstract member SetInexactRepeating : Android.App.AlarmType * int64 * int64 * Android.App.PendingIntent -> unit
override this.SetInexactRepeating : Android.App.AlarmType * int64 * int64 * Android.App.PendingIntent -> unit

Parâmetros

type
AlarmType

tipo de alarme.

triggerAtMillis
Int64

tempo em milissegundos em que o alarme deve primeiro desligar, usando o relógio apropriado (dependendo do tipo de alarme). Isso é inexact: o alarme não será acionado antes desta vez, mas pode haver um atraso de quase um intervalo inteiro de alarme antes da primeira invocação do alarme.

intervalMillis
Int64

intervalo em milissegundos entre as repetições subsequentes do alarme. Antes da API 19, se esta for uma das INTERVAL_FIFTEEN_MINUTES, INTERVAL_HALF_HOUR, INTERVAL_HOUR, INTERVAL_HALF_DAY ou INTERVAL_DAY, o alarme será alinhado à fase com outros alarmes para reduzir o número de ativações. Caso contrário, o alarme será definido como se o aplicativo tivesse chamado #setRepeating. A partir da API 19, todos os alarmes repetidos estarão inexatos e sujeitos ao envio em lote com outros alarmes, independentemente do intervalo de repetição declarado.

operation
PendingIntent

Ação a ser executada quando o alarme disparar; normalmente vem de PendingIntent#getBroadcast IntentSender.getBroadcast().

Atributos

Comentários

Agende um alarme repetido que tenha requisitos de tempo de gatilho inexact; por exemplo, um alarme que se repete a cada hora, mas não necessariamente na parte superior de cada hora. Esses alarmes são mais eficientes do que as recorrências estritas tradicionalmente fornecidas por setRepeating(int, long, long, PendingIntent), já que o sistema pode ajustar os tempos de entrega dos alarmes para fazer com que eles disparem simultaneamente, evitando que o dispositivo durma mais do que o necessário. O primeiro gatilho do alarme não será antes do horário solicitado, mas pode não ocorrer por quase um intervalo completo após esse tempo. Além disso, enquanto o período geral do alarme repetido será conforme solicitado, o tempo entre duas disparos sucessivas do alarme pode variar. Se o aplicativo exigir um tremulação muito baixo, use alarmes de um tiro com uma janela apropriada; consulte setWindow(int,long, long,PendingIntent) e setExact(int,long,PendingIntent). A partir da API 19, todos os alarmes repetidos são inexactes. Como esse método está disponível desde a API 3, seu aplicativo pode chamá-lo com segurança e ter certeza de que obterá um comportamento semelhante em versões atuais e mais antigas do Android. Aplicativos direcionados Build.VERSION_CODES. S precisará definir o sinalizador PendingIntent.FLAG_MUTABLE no PendingIntent que está sendo usado para definir esse alarme, se quiser que a contagem de alarmes seja fornecida com a chave Intent.EXTRA_ALARM_COUNT.

Consulte também:

Referência do Android para android.app.AlarmManager.setInexactRepeating.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Aplica-se a