Sprache

RemoteCallbackList.BeginBroadcast Methode

Definition

Verwenden Sie #broadcast(Consumer) stattdessen die ordnungsgemäße Handhabung von fixierten Prozessen.

[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

Gibt zurück

Gibt die Anzahl der Schnittstellen in der Übertragung zurück, mit der der Bereich der Indizes bestimmt werden #getBroadcastItem kann, die Sie bereitstellen können.

Attribute

Hinweise

Verwenden Sie #broadcast(Consumer) stattdessen die ordnungsgemäße Handhabung von fixierten Prozessen.

Bereiten Sie sich darauf vor, Aufrufe an die aktuell registrierten Schnittstellen zu tätigen. Dadurch wird eine Kopie der Schnittstellenliste erstellt, aus der Sie Elemente aus der Verwendung #getBroadcastItemabrufen können. Beachten Sie, dass jeweils nur eine Übertragung aktiv sein kann. Daher müssen Sie dies immer über denselben Thread (in der Regel durch Planung mit Handler) aufrufen oder ihre eigene Synchronisierung durchführen. Wenn Sie fertig sind, müssen Sie anrufen #finishBroadcast .

Eine typische Schleife, die eine Übertragung abliefert, sieht wie folgt aus:

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();

Beachten Sie, dass diese Methode nur für #FROZEN_CALLEE_POLICY_UNSET. Verwenden Sie #broadcast(Consumer) für andere Richtlinien stattdessen.

Java Dokumentation für android.os.RemoteCallbackList.beginBroadcast().

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

Siehe auch