Idioma

RemoteCallbackList.BeginBroadcast Método

Definição

Em vez disso, use #broadcast(Consumer) para garantir o tratamento adequado de processos congelados.

[Android.Runtime.Register("beginBroadcast", "()I", "GetBeginBroadcastHandler")]
public virtual int BeginBroadcast();
[<Android.Runtime.Register("beginBroadcast", "()I", "GetBeginBroadcastHandler")>]
abstract member BeginBroadcast : unit -> int
override this.BeginBroadcast : unit -> int

Retornos

Retorna o número de interfaces na difusão, a serem usadas #getBroadcastItem para determinar o intervalo de índices que você pode fornecer.

Atributos

Comentários

Em vez disso, use #broadcast(Consumer) para garantir o tratamento adequado de processos congelados.

Prepare-se para começar a fazer chamadas para as interfaces registradas no momento. Isso cria uma cópia da lista de interfaces, que você pode recuperar itens usando #getBroadcastItem. Observe que apenas uma transmissão pode estar ativa por vez, portanto, você deve sempre chamar isso do mesmo thread (geralmente agendando com Handler) ou fazer sua própria sincronização. Você deve ligar #finishBroadcast quando terminar.

Um loop típico que fornece uma transmissão tem esta aparência:

int i = interfaces.beginBroadcast();
            while (i &gt; 0) {
                i--;
                try {
                    interfaces.getBroadcastItem(i).somethingHappened();
                } catch (RemoteException e) {
                    // The RemoteCallbackList will take care of removing
                    // the dead object for us.
                }
            }
            interfaces.finishBroadcast();

Observe que esse método só tem suporte para #FROZEN_CALLEE_POLICY_UNSET. Em vez disso, para outras políticas, use #broadcast(Consumer) .

Java documentação para android.os.RemoteCallbackList.beginBroadcast().

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

Confira também