Idioma

BroadcastReceiver.OnReceive(Context, Intent) Método

Definição

Esse método é chamado quando o BroadcastReceiver está recebendo uma transmissão de intenção.

[Android.Runtime.Register("onReceive", "(Landroid/content/Context;Landroid/content/Intent;)V", "GetOnReceive_Landroid_content_Context_Landroid_content_Intent_Handler")]
public abstract void OnReceive(Android.Content.Context? context, Android.Content.Intent? intent);
[<Android.Runtime.Register("onReceive", "(Landroid/content/Context;Landroid/content/Intent;)V", "GetOnReceive_Landroid_content_Context_Landroid_content_Intent_Handler")>]
abstract member OnReceive : Android.Content.Context * Android.Content.Intent -> unit

Parâmetros

context
Context

O contexto no qual o receptor está em execução.

intent
Intent

A Intenção que está sendo recebida.

Atributos

Comentários

Esse método é chamado quando o BroadcastReceiver está recebendo uma transmissão de intenção. Durante esse tempo, você pode usar os outros métodos no BroadcastReceiver para exibir/modificar os valores de resultado atuais. Esse método é sempre chamado dentro do thread principal de seu processo, a menos que você tenha solicitado explicitamente que ele seja agendado em um thread diferente usando android.content.Context#registerReceiver(BroadcastReceiver, IntentFilter, String, android.os.Handler). Quando ele é executado no thread principal, você nunca deve executar operações de execução longa nele (há um tempo limite de 10 segundos que o sistema permite antes de considerar que o receptor deve ser bloqueado e um candidato a ser morto). Não é possível iniciar uma caixa de diálogo pop-up na implementação de onReceive().

bSe este BroadcastReceiver foi iniciado por meio de um < receptor> tag, em seguida, o objeto não está mais vivo depois de retornar dessa função./b Isso significa que você não deve executar nenhuma operação que retorne um resultado para você de forma assíncrona. Se você precisar executar qualquer trabalho em segundo plano de acompanhamento, agende um android.app.job.JobService com android.app.job.JobScheduler.

Se você deseja interagir com um serviço que já está em execução e vinculado anteriormente usando android.content.Context#bindService(Intent, ServiceConnection, int) bindService(), você pode usar #peekService.

Os filtros de intenção usados em android.content.Context#registerReceiver manifestos de aplicativo e não<> são <>garantidos como exclusivos. Elas são dicas para o sistema operacional sobre como encontrar destinatários adequados. É possível que os remetentes forcem a entrega a destinatários específicos, ignorando a resolução de filtro. Por esse motivo, #onReceive(Context, Intent) onReceive() as implementações devem responder apenas a ações conhecidas, ignorando quaisquer intenções inesperadas que possam receber.

Java documentação para android.content.BroadcastReceiver.onReceive(android.content.Context, android.content.Intent).

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