BidirectionalStream.Builder

public abstract class BidirectionalStream.Builder


Builder per BidirectionalStream s. Consente di configurare lo stream prima di costruirlo tramite build. Creato da newBidirectionalStreamBuilder.

Riepilogo

Costanti

static final int

Priorità più alta dello stream.

static final int

Priorità più bassa dello stream.

static final int

Priorità bassa dello stream.

static final int

Priorità del flusso molto bassa.

static final int

Priorità media dello stream.

Costruttori pubblici

Metodi pubblici

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

Aggiunge un'intestazione della richiesta.

BidirectionalStream.Builder

Associa l'oggetto annotazione a questa richiesta.

BidirectionalStream.Builder
bindToNetwork(long networkHandle)

Associa la richiesta all'handle di rete specificato.

abstract BidirectionalStream

Crea un BidirectionalStream utilizzando la configurazione di questo Builder.

abstract BidirectionalStream.Builder
delayRequestHeadersUntilFirstFlush(
    boolean delayRequestHeadersUntilFirstFlush
)

Ritarda l'invio delle intestazioni delle richieste fino alla chiamata di flush.

abstract BidirectionalStream.Builder

Imposta il metodo HTTP per la richiesta.

abstract BidirectionalStream.Builder
setPriority(int priority)

Imposta la priorità dello stream, che deve essere uno dei valori STREAM_PRIORITY_*.

BidirectionalStream.Builder

Imposta il tag android.net.TrafficStats da utilizzare per contabilizzare il traffico socket causato da questa richiesta.

BidirectionalStream.Builder

Imposta un UID specifico da utilizzare per il traffico socket causato da questa richiesta.

Costanti

STREAM_PRIORITY_HIGHEST

public static final int STREAM_PRIORITY_HIGHEST = 4

Priorità più alta dello stream. Trasferito a setPriority.

STREAM_PRIORITY_IDLE

public static final int STREAM_PRIORITY_IDLE = 0

Priorità più bassa dello stream. Trasferito a setPriority.

STREAM_PRIORITY_LOW

public static final int STREAM_PRIORITY_LOW = 2

Priorità bassa dello stream. Trasferito a setPriority.

STREAM_PRIORITY_LOWEST

public static final int STREAM_PRIORITY_LOWEST = 1

Priorità del flusso molto bassa. Trasferito a setPriority.

STREAM_PRIORITY_MEDIUM

public static final int STREAM_PRIORITY_MEDIUM = 3

Priorità media dello stream. Trasferito a setPriority. Questa è la priorità predefinita assegnata allo stream.

Costruttori pubblici

Builder

public Builder()

Metodi pubblici

addHeader

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

Aggiunge un'intestazione della richiesta. Restituisce il builder per facilitare il concatenamento.

Parametri
String header

il nome dell'intestazione

String value

il valore dell'intestazione

Resi
BidirectionalStream.Builder

lo strumento per la creazione per facilitare il concatenamento

addRequestAnnotation

public BidirectionalStream.Builder addRequestAnnotation(Object annotation)

Associa l'oggetto annotazione a questa richiesta. Può aggiungerne più di uno. Trasferito a un RequestFinishedInfo.Listener, vedi getAnnotations.

Parametri
Object annotation

un oggetto da passare a RequestFinishedInfo.Listener con un RequestFinishedInfo.

Resi
BidirectionalStream.Builder

lo strumento di creazione per facilitare il concatenamento.

bindToNetwork

public BidirectionalStream.Builder bindToNetwork(long networkHandle)

Associa la richiesta all'handle di rete specificato. Cronet invierà questa richiesta solo utilizzando la rete associata a questo handle. Se la rete si disconnette, la richiesta non andrà a buon fine. L'errore esatto dipende dalla fase di elaborazione della richiesta al momento della disconnessione della rete. Gli handle di rete possono essere ottenuti tramite Network#getNetworkHandle. Disponibile solo a partire da Android Marshmallow.

Parametri
long networkHandle

l'handle di rete a cui associare la richiesta. Specifica UNBIND_NETWORK_HANDLE per annullare l'associazione.

Resi
BidirectionalStream.Builder

lo strumento di creazione per facilitare il concatenamento.

build

public abstract BidirectionalStream build()

Crea un BidirectionalStream utilizzando la configurazione di questo Builder. La BidirectionalStream restituita può essere avviata chiamando il numero start.

Resi
BidirectionalStream

costruito BidirectionalStream utilizzando la configurazione di questo Builder

delayRequestHeadersUntilFirstFlush

public abstract BidirectionalStream.Builder delayRequestHeadersUntilFirstFlush(
    boolean delayRequestHeadersUntilFirstFlush
)

Ritarda l'invio delle intestazioni delle richieste fino alla chiamata di flush. Al momento questo flag viene rispettato solo quando viene negoziato QUIC. Se è true, QUIC invierà il frame dell'intestazione della richiesta insieme ai frame di dati come singolo pacchetto, se possibile.

Parametri
boolean delayRequestHeadersUntilFirstFlush

Se true, l'invio delle intestazioni delle richieste verrà ritardato fino a quando non viene chiamato flush().

Resi
BidirectionalStream.Builder

lo strumento di creazione per facilitare il concatenamento.

setHttpMethod

public abstract BidirectionalStream.Builder setHttpMethod(String method)

Imposta il metodo HTTP per la richiesta. Restituisce il builder per facilitare il concatenamento.

Parametri
String method

il metodo da utilizzare per la richiesta. Il valore predefinito è "POST"

Resi
BidirectionalStream.Builder

lo strumento per la creazione per facilitare il concatenamento

setPriority

public abstract BidirectionalStream.Builder setPriority(int priority)

Imposta la priorità dello stream, che deve essere uno dei valori STREAM_PRIORITY_*. Se questo metodo non viene chiamato, al flusso viene assegnata la priorità STREAM_PRIORITY_MEDIUM.

Parametri
int priority

priorità dello stream, che deve essere uno dei valori STREAM_PRIORITY_*.

Resi
BidirectionalStream.Builder

lo strumento di creazione per facilitare il concatenamento.

setTrafficStatsTag

public BidirectionalStream.Builder setTrafficStatsTag(int tag)

Imposta il tag android.net.TrafficStats da utilizzare per contabilizzare il traffico socket causato da questa richiesta. Leggi i android.net.TrafficStats per avere ulteriori informazioni. Se non viene impostato alcun tag (ad es. questo metodo non viene chiamato), Android considera il traffico socket causato da questa richiesta come se il valore del tag fosse impostato su 0.

NOTA:l'impostazione di un tag non consente la condivisione dei socket con le richieste con altri tag, il che potrebbe influire negativamente sulle prestazioni vietando la condivisione delle connessioni. In altre parole, l'utilizzo di socket multiplexati (ad es. HTTP/2 e QUIC) sarà consentito solo se tutte le richieste hanno lo stesso tag socket.

Parametri
int tag

il valore del tag utilizzato per contabilizzare il traffico dei socket causato da questa richiesta. I tag compresi tra 0xFFFFFF00 e 0xFFFFFFFF sono riservati e utilizzati internamente dai servizi di sistema come android.app.DownloadManager quando eseguono il traffico per conto di un'applicazione.

Resi
BidirectionalStream.Builder

lo strumento di creazione per facilitare il concatenamento.

setTrafficStatsUid

public BidirectionalStream.Builder setTrafficStatsUid(int uid)

Imposta un UID specifico da utilizzare per il traffico socket causato da questa richiesta. Consulta android.net.TrafficStats per ulteriori informazioni. Progettato per l'utilizzo durante l'esecuzione di un'operazione per conto di un'altra applicazione. Il chiamante deve disporre dell'autorizzazione MODIFY_NETWORK_ACCOUNTING. Per impostazione predefinita, il traffico viene attribuito all'UID del chiamante.

NOTA:l'impostazione di un UID non consente la condivisione di socket con richieste con altri UID, il che potrebbe influire negativamente sulle prestazioni vietando la condivisione delle connessioni. In altre parole, l'utilizzo di socket multiplexati (ad es. HTTP/2 e QUIC) sarà consentito solo se tutte le richieste hanno lo stesso UID impostato.

Parametri
int uid

l'UID a cui attribuire il traffico socket causato da questa richiesta.

Resi
BidirectionalStream.Builder

lo strumento di creazione per facilitare il concatenamento.