BidirectionalStream.Builder

abstract class BidirectionalStream.Builder


ผู้รับสร้างบ้านสำหรับ BidirectionalStream อนุญาตให้กำหนดค่าสตรีมก่อนสร้างผ่าน build สร้างโดย newBidirectionalStreamBuilder

สรุป

ค่าคงที่

const Int

ลำดับความสำคัญของสตรีมสูงสุด

const Int

ลำดับความสำคัญของสตรีมต่ำสุด

const Int

ลำดับความสำคัญของสตรีมต่ำ

const Int

ลำดับความสำคัญของสตรีมต่ำมาก

const Int

ลำดับความสำคัญของสตรีมปานกลาง

เครื่องมือสร้างสาธารณะ

ฟังก์ชันสาธารณะ

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

เพิ่มส่วนหัวของคำขอ

BidirectionalStream.Builder!
addRequestAnnotation(annotation: Any!)

เชื่อมโยงออบเจ็กต์คำอธิบายประกอบกับคำขอนี้

BidirectionalStream.Builder!
bindToNetwork(networkHandle: Long)

เชื่อมโยงคำขอกับแฮนเดิลเครือข่ายที่ระบุ

abstract BidirectionalStream!

สร้าง BidirectionalStream โดยใช้การกำหนดค่าจาก Builder นี้

abstract BidirectionalStream.Builder!
delayRequestHeadersUntilFirstFlush(
    delayRequestHeadersUntilFirstFlush: Boolean
)

หน่วงเวลาการส่งส่วนหัวของคำขอจนกว่าจะมีการเรียกใช้ flush

abstract BidirectionalStream.Builder!

ตั้งค่าเมธอด HTTP สำหรับคำขอ

abstract BidirectionalStream.Builder!
setPriority(priority: Int)

ตั้งค่าลำดับความสำคัญของสตรีมซึ่งควรเป็นค่าใดค่าหนึ่งของ STREAM_PRIORITY_*

BidirectionalStream.Builder!

ตั้งค่าแท็ก android.net.TrafficStats ที่จะใช้เมื่อพิจารณาการเข้าชมซ็อกเก็ตที่เกิดจากคำขอนี้

BidirectionalStream.Builder!

ตั้งค่า UID ที่เฉพาะเจาะจงเพื่อใช้เมื่อบันทึกการรับส่งข้อมูลของซ็อกเก็ตที่เกิดจากคำขอนี้

ค่าคงที่

STREAM_PRIORITY_HIGHEST

const val STREAM_PRIORITY_HIGHEST = 4: Int

ลำดับความสำคัญของสตรีมสูงสุด ส่งต่อให้ setPriority แล้ว

STREAM_PRIORITY_IDLE

const val STREAM_PRIORITY_IDLE = 0: Int

ลำดับความสำคัญของสตรีมต่ำสุด ส่งต่อให้ setPriority แล้ว

STREAM_PRIORITY_LOW

const val STREAM_PRIORITY_LOW = 2: Int

ลำดับความสำคัญของสตรีมต่ำ ส่งต่อให้ setPriority แล้ว

STREAM_PRIORITY_LOWEST

const val STREAM_PRIORITY_LOWEST = 1: Int

ลำดับความสำคัญของสตรีมต่ำมาก ส่งต่อให้ setPriority แล้ว

STREAM_PRIORITY_MEDIUM

const val STREAM_PRIORITY_MEDIUM = 3: Int

ลำดับความสำคัญของสตรีมปานกลาง ส่งต่อให้ setPriority แล้ว นี่คือลำดับความสำคัญเริ่มต้นที่กำหนดให้กับสตรีม

เครื่องมือสร้างสาธารณะ

Builder

Builder()

ฟังก์ชันสาธารณะ

addHeader

abstract fun addHeader(header: String!, value: String!): BidirectionalStream.Builder!

เพิ่มส่วนหัวของคำขอ ส่งคืนเครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง

พารามิเตอร์
header: String!

ชื่อส่วนหัว

value: String!

ค่าของส่วนหัว

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่อช่วยให้การเชื่อมโยงเป็นไปได้

addRequestAnnotation

fun addRequestAnnotation(annotation: Any!): BidirectionalStream.Builder!

เชื่อมโยงออบเจ็กต์คำอธิบายประกอบกับคำขอนี้ อาจเพิ่มได้มากกว่า 1 รายการ ส่งต่อไปยัง RequestFinishedInfo.Listener โปรดดู getAnnotations

พารามิเตอร์
annotation: Any!

ออบเจ็กต์ที่จะส่งไปยัง RequestFinishedInfo.Listener ด้วย RequestFinishedInfo

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง

bindToNetwork

fun bindToNetwork(networkHandle: Long): BidirectionalStream.Builder!

เชื่อมโยงคำขอกับแฮนเดิลเครือข่ายที่ระบุ Cronet จะส่งคำขอนี้โดยใช้เฉพาะเครือข่ายที่เชื่อมโยงกับแฮนเดิลนี้ หากเครือข่ายนี้ตัดการเชื่อมต่อ คำขอจะล้มเหลว โดยข้อผิดพลาดที่แน่นอนจะขึ้นอยู่กับขั้นตอนการประมวลผลคำขอเมื่อเครือข่ายตัดการเชื่อมต่อ คุณรับแฮนเดิลเครือข่ายได้ผ่าน Network#getNetworkHandle พร้อมใช้งานตั้งแต่ Android Marshmallow เป็นต้นไปเท่านั้น

พารามิเตอร์
networkHandle: Long

แฮนเดิลเครือข่ายที่จะเชื่อมโยงคำขอ ระบุ UNBIND_NETWORK_HANDLE เพื่อยกเลิกการเชื่อมโยง

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง

สร้าง

abstract fun build(): BidirectionalStream!

สร้าง BidirectionalStream โดยใช้การกำหนดค่าจาก Builder นี้ จากนั้นคุณจะเริ่มใช้ BidirectionalStream ที่ส่งคืนมาได้โดยโทรหา start

การคืนสินค้า
BidirectionalStream!

สร้าง BidirectionalStream โดยใช้การกำหนดค่าจาก Builder นี้

delayRequestHeadersUntilFirstFlush

abstract fun delayRequestHeadersUntilFirstFlush(
    delayRequestHeadersUntilFirstFlush: Boolean
): BidirectionalStream.Builder!

หน่วงเวลาการส่งส่วนหัวของคำขอจนกว่าจะมีการเรียกใช้ flush ปัจจุบันระบบจะพิจารณา Flag นี้เมื่อมีการเจรจา QUIC เท่านั้น เมื่อเป็นจริง QUIC จะส่งเฟรมส่วนหัวของคำขอพร้อมกับเฟรมข้อมูลเป็นแพ็กเก็ตเดียวเมื่อเป็นไปได้

พารามิเตอร์
delayRequestHeadersUntilFirstFlush: Boolean

หากเป็นจริง ระบบจะหน่วงเวลาการส่งส่วนหัวของคำขอจนกว่าจะเรียกใช้ flush()

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง

setHttpMethod

abstract fun setHttpMethod(method: String!): BidirectionalStream.Builder!

ตั้งค่าเมธอด HTTP สำหรับคำขอ ส่งคืนเครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง

พารามิเตอร์
method: String!

เมธอดที่จะใช้สำหรับคำขอ ค่าเริ่มต้นคือ "POST"

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่อช่วยให้การเชื่อมโยงเป็นไปได้

setPriority

abstract fun setPriority(priority: Int): BidirectionalStream.Builder!

ตั้งค่าลำดับความสำคัญของสตรีมซึ่งควรเป็นค่าใดค่าหนึ่งของ STREAM_PRIORITY_* สตรีมจะมีลำดับความสำคัญเป็น STREAM_PRIORITY_MEDIUM หากไม่ได้เรียกใช้เมธอดนี้

พารามิเตอร์
priority: Int

ลำดับความสำคัญของสตรีมซึ่งควรเป็นค่าใดค่าหนึ่งของ STREAM_PRIORITY_*

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง

setTrafficStatsTag

fun setTrafficStatsTag(tag: Int): BidirectionalStream.Builder!

ตั้งค่าแท็ก android.net.TrafficStats ที่จะใช้เมื่อพิจารณาการเข้าชมซ็อกเก็ตที่เกิดจากคำขอนี้ ดูข้อมูลเพิ่มเติมที่ android.net.TrafficStats หากไม่ได้ตั้งค่าแท็ก (เช่น ไม่ได้เรียกใช้เมธอดนี้) บัญชี Android จะถือว่าการเข้าชมซ็อกเก็ตที่เกิดจากคำขอนี้เป็นค่าแท็กที่ตั้งเป็น 0

หมายเหตุ: การตั้งค่าแท็กจะไม่อนุญาตให้แชร์ซ็อกเก็ตกับคำขอที่มีแท็กอื่น ซึ่งอาจส่งผลเสียต่อประสิทธิภาพโดยการห้ามแชร์การเชื่อมต่อ กล่าวคือ จะอนุญาตให้ใช้ซ็อกเก็ตแบบมัลติเพล็กซ์ (เช่น HTTP/2 และ QUIC) ก็ต่อเมื่อคำขอทั้งหมดมีแท็กซ็อกเก็ตเดียวกัน

พารามิเตอร์
tag: Int

ค่าแท็กที่ใช้เมื่อพิจารณาการเข้าชมซ็อกเก็ตที่เกิดจากคำขอนี้ แท็กระหว่าง 0xFFFFFF00 ถึง 0xFFFFFFFF จะสงวนไว้และใช้ภายในโดยบริการของระบบ เช่น android.app.DownloadManager เมื่อทำการรับส่งข้อมูลในนามของแอปพลิเคชัน

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง

setTrafficStatsUid

fun setTrafficStatsUid(uid: Int): BidirectionalStream.Builder!

ตั้งค่า UID ที่เฉพาะเจาะจงเพื่อใช้เมื่อบันทึกการรับส่งข้อมูลของซ็อกเก็ตที่เกิดจากคำขอนี้ ดูข้อมูลเพิ่มเติมที่ android.net.TrafficStats ออกแบบมาเพื่อใช้เมื่อดำเนินการในนามของแอปพลิเคชันอื่น ผู้โทรต้องมีสิทธิ์ MODIFY_NETWORK_ACCOUNTING โดยค่าเริ่มต้น ระบบจะระบุแหล่งที่มาของการเข้าชมเป็น UID ของผู้โทร

หมายเหตุ: การตั้งค่า UID จะไม่อนุญาตให้แชร์ซ็อกเก็ตกับคำขอที่มี UID อื่น ซึ่งอาจส่งผลเสียต่อประสิทธิภาพโดยการห้ามการแชร์การเชื่อมต่อ กล่าวคือ จะอนุญาตให้ใช้ซ็อกเก็ตแบบมัลติเพล็กซ์ (เช่น HTTP/2 และ QUIC) ก็ต่อเมื่อคำขอทั้งหมดมีการตั้งค่า UID เดียวกัน

พารามิเตอร์
uid: Int

UID เพื่อระบุแหล่งที่มาของการรับส่งข้อมูลในซ็อกเก็ตที่เกิดจากคำขอนี้

การคืนสินค้า
BidirectionalStream.Builder!

เครื่องมือสร้างเพื่ออำนวยความสะดวกในการเชื่อมโยง