BidirectionalStream.Builder

public abstract class BidirectionalStream.Builder


Builder für BidirectionalStreams. Ermöglicht die Konfiguration des Streams, bevor er über build erstellt wird. Erstellt von newBidirectionalStreamBuilder.

Zusammenfassung

Konstanten

static final int

Höchste Stream-Priorität.

static final int

Niedrigste Stream-Priorität.

static final int

Niedrige Stream-Priorität.

static final int

Sehr niedrige Stream-Priorität.

static final int

Mittlere Stream-Priorität.

Öffentliche Konstruktoren

Öffentliche Methoden

abstract BidirectionalStream.Builder
addHeader(String header, String value)

Fügt einen Anfrageheader hinzu.

BidirectionalStream.Builder

Verknüpft das Annotations-Objekt mit dieser Anfrage.

BidirectionalStream.Builder
bindToNetwork(long networkHandle)

Bindet die Anfrage an das angegebene Netzwerk-Handle.

abstract BidirectionalStream

Erstellt einen BidirectionalStream mit der Konfiguration aus diesem Builder.

abstract BidirectionalStream.Builder
delayRequestHeadersUntilFirstFlush(
    boolean delayRequestHeadersUntilFirstFlush
)

Verzögert das Senden von Anfrageheadern, bis flush aufgerufen wird.

abstract BidirectionalStream.Builder

Legt die HTTP-Methode für die Anfrage fest.

abstract BidirectionalStream.Builder
setPriority(int priority)

Legt die Priorität des Streams fest. Der Wert muss einer der STREAM_PRIORITY_*-Werte sein.

BidirectionalStream.Builder

Legt das android.net.TrafficStats-Tag fest, das verwendet werden soll, wenn der durch diese Anfrage verursachte Socket-Traffic berücksichtigt wird.

BidirectionalStream.Builder

Legt eine bestimmte UID fest, die bei der Abrechnung des Socket-Traffics verwendet werden soll, der durch diese Anfrage verursacht wird.

Konstanten

STREAM_PRIORITY_HIGHEST

public static final int STREAM_PRIORITY_HIGHEST = 4

Höchste Stream-Priorität. An setPriority weitergeleitet.

STREAM_PRIORITY_IDLE

public static final int STREAM_PRIORITY_IDLE = 0

Niedrigste Stream-Priorität. An setPriority weitergeleitet.

STREAM_PRIORITY_LOW

public static final int STREAM_PRIORITY_LOW = 2

Niedrige Stream-Priorität. An setPriority weitergeleitet.

STREAM_PRIORITY_LOWEST

public static final int STREAM_PRIORITY_LOWEST = 1

Sehr niedrige Stream-Priorität. An setPriority weitergeleitet.

STREAM_PRIORITY_MEDIUM

public static final int STREAM_PRIORITY_MEDIUM = 3

Mittlere Stream-Priorität. An setPriority weitergeleitet. Dies ist die Standardpriorität, die dem Stream zugewiesen wird.

Öffentliche Konstruktoren

Builder

public Builder()

Öffentliche Methoden

addHeader

public abstract BidirectionalStream.Builder addHeader(String header, String value)

Fügt einen Anfrageheader hinzu. Gibt den Builder zurück, um das Chaining zu erleichtern.

Parameter
String header

den Headernamen

String value

der Headerwert

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder erleichtert die Verkettung.

addRequestAnnotation

public BidirectionalStream.Builder addRequestAnnotation(Object annotation)

Verknüpft das Annotations-Objekt mit dieser Anfrage. Sie können mehrere hinzufügen. An ein RequestFinishedInfo.Listener übergeben, siehe getAnnotations.

Parameter
Object annotation

Ein Objekt, das mit einem RequestFinishedInfo an das RequestFinishedInfo.Listener übergeben werden soll.

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder, um die Verkettung zu ermöglichen.

bindToNetwork

public BidirectionalStream.Builder bindToNetwork(long networkHandle)

Bindet die Anfrage an das angegebene Netzwerk-Handle. Cronet sendet diese Anfrage nur über das Netzwerk, das mit diesem Handle verknüpft ist. Wenn die Verbindung zum Netzwerk unterbrochen wird, schlägt die Anfrage fehl. Der genaue Fehler hängt davon ab, in welcher Phase der Verarbeitung der Anfrage die Verbindung zum Netzwerk unterbrochen wird. Netzwerk-Handles können über Network#getNetworkHandle abgerufen werden. Nur ab Android Marshmallow verfügbar.

Parameter
long networkHandle

Der Netzwerk-Handle, an den die Anfrage gebunden werden soll. Geben Sie UNBIND_NETWORK_HANDLE an, um die Bindung aufzuheben.

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder, um die Verkettung zu ermöglichen.

Build

public abstract BidirectionalStream build()

Erstellt einen BidirectionalStream mit der Konfiguration aus diesem Builder. Die zurückgegebene BidirectionalStream kann dann durch Aufrufen von start gestartet werden.

Gibt Folgendes zurück:
BidirectionalStream

BidirectionalStream wurde mit der Konfiguration aus diesem Builder erstellt.

delayRequestHeadersUntilFirstFlush

public abstract BidirectionalStream.Builder delayRequestHeadersUntilFirstFlush(
    boolean delayRequestHeadersUntilFirstFlush
)

Verzögert das Senden von Anfrageheadern, bis flush aufgerufen wird. Dieses Flag wird derzeit nur berücksichtigt, wenn QUIC ausgehandelt wird. Wenn „true“, sendet QUIC den Anfrageheader-Frame zusammen mit den Datenframes als einzelnes Paket, sofern möglich.

Parameter
boolean delayRequestHeadersUntilFirstFlush

Bei „true“ wird das Senden von Anfrageheadern verzögert, bis „flush()“ aufgerufen wird.

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder, um die Verkettung zu ermöglichen.

setHttpMethod

public abstract BidirectionalStream.Builder setHttpMethod(String method)

Legt die HTTP-Methode für die Anfrage fest. Gibt den Builder zurück, um das Chaining zu erleichtern.

Parameter
String method

Die für die Anfrage zu verwendende Methode. Der Standardwert ist „POST“.

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder erleichtert die Verkettung.

setPriority

public abstract BidirectionalStream.Builder setPriority(int priority)

Legt die Priorität des Streams fest. Der Wert muss einer der STREAM_PRIORITY_*-Werte sein. Dem Stream wird die Priorität STREAM_PRIORITY_MEDIUM zugewiesen, wenn diese Methode nicht aufgerufen wird.

Parameter
int priority

Die Priorität des Streams, die einer der STREAM_PRIORITY_*-Werte sein sollte.

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder, um die Verkettung zu ermöglichen.

setTrafficStatsTag

public BidirectionalStream.Builder setTrafficStatsTag(int tag)

Legt das android.net.TrafficStats-Tag fest, das verwendet werden soll, wenn der durch diese Anfrage verursachte Socket-Traffic berücksichtigt wird. Weitere Informationen findest du in den android.net.TrafficStats. Wenn kein Tag festgelegt ist (z.B. wenn diese Methode nicht aufgerufen wird), berücksichtigt Android den durch diese Anfrage verursachten Socket-Traffic so, als wäre der Tag-Wert auf 0 gesetzt.

HINWEIS:Wenn Sie ein Tag festlegen, können Sockets nicht für Anfragen mit anderen Tags freigegeben werden. Dies kann sich negativ auf die Leistung auswirken, da keine Verbindungen gemeinsam genutzt werden können. Mit anderen Worten: Die Verwendung von Multiplex-Sockets (z.B. HTTP/2 und QUIC) ist nur zulässig, wenn alle Anfragen dasselbe Socket-Tag haben.

Parameter
int tag

Der Tag-Wert, der bei der Berücksichtigung des Socket-Traffics verwendet wird, der durch diese Anfrage verursacht wird. Tags zwischen 0xFFFFFF00 und 0xFFFFFFFF sind reserviert und werden intern von Systemdiensten wie android.app.DownloadManager verwendet, wenn Traffic im Namen einer Anwendung ausgeführt wird.

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder, um die Verkettung zu ermöglichen.

setTrafficStatsUid

public BidirectionalStream.Builder setTrafficStatsUid(int uid)

Legt eine bestimmte UID fest, die bei der Abrechnung des Socket-Traffics verwendet werden soll, der durch diese Anfrage verursacht wird. Weitere Informationen finden Sie unter android.net.TrafficStats. Für die Verwendung bei der Ausführung eines Vorgangs im Namen einer anderen Anwendung vorgesehen. Der Aufrufer muss die Berechtigung MODIFY_NETWORK_ACCOUNTING haben. Standardmäßig wird Traffic der UID des Anrufers zugeordnet.

HINWEIS:Wenn Sie eine UID festlegen, können Sockets nicht für Anfragen mit anderen UIDs freigegeben werden. Dies kann sich negativ auf die Leistung auswirken, da keine Verbindungsfreigabe möglich ist. Mit anderen Worten: Die Verwendung von Multiplex-Sockets (z.B. HTTP/2 und QUIC) ist nur zulässig, wenn für alle Anfragen dieselbe UID festgelegt ist.

Parameter
int uid

Die UID, die dem Socket-Traffic zugewiesen werden soll, der durch diese Anfrage verursacht wird.

Gibt Folgendes zurück:
BidirectionalStream.Builder

Der Builder, um die Verkettung zu ermöglichen.