سازنده‌ی جریان دوطرفه

public abstract class BidirectionalStream.Builder


سازنده برای BidirectionalStream . امکان پیکربندی جریان را قبل از ساخت آن از طریق build فراهم می‌کند. ایجاد شده توسط newBidirectionalStreamBuilder .

خلاصه

ثابت‌ها

static final int

بالاترین اولویت جریان.

static final int

کمترین اولویت جریان.

static final int

اولویت جریان پایین.

static final int

اولویت جریان بسیار پایین.

static final int

اولویت جریان متوسط.

سازندگان عمومی

Builder ()

روش‌های عمومی

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

یک هدر درخواست اضافه می‌کند.

BidirectionalStream.Builder

شیء حاشیه‌نویسی را با این درخواست مرتبط می‌کند.

BidirectionalStream.Builder
bindToNetwork (long networkHandle)

درخواست را به شناسه شبکه مشخص شده متصل می‌کند.

abstract BidirectionalStream
build ()

با استفاده از پیکربندی این Builder یک BidirectionalStream ایجاد می‌کند.

abstract BidirectionalStream.Builder
delayRequestHeadersUntilFirstFlush (
boolean delayRequestHeadersUntilFirstFlush
)

ارسال هدرهای درخواست را تا زمان فراخوانی flush به تأخیر می‌اندازد.

abstract BidirectionalStream.Builder

متد HTTP را برای درخواست تنظیم می‌کند.

abstract BidirectionalStream.Builder
setPriority (int priority)

اولویت جریان را تنظیم می‌کند که باید یکی از مقادیر STREAM_PRIORITY_* باشد.

BidirectionalStream.Builder

تگ android.net.TrafficStats را برای استفاده هنگام محاسبه ترافیک سوکت ناشی از این درخواست تنظیم می‌کند.

BidirectionalStream.Builder

شناسه کاربری (UID) خاصی را برای استفاده هنگام محاسبه ترافیک سوکت ناشی از این درخواست تنظیم می‌کند.

ثابت‌ها

بالاترین اولویت پخش

public static final int STREAM_PRIORITY_HIGHEST = 4

بالاترین اولویت جریان. به setPriority منتقل شد.

اولویت پخش زنده

public static final int STREAM_PRIORITY_IDLE = 0

کمترین اولویت جریان. به setPriority منتقل شد.

اولویت پخش پایین

public static final int STREAM_PRIORITY_LOW = 2

اولویت جریان پایین. به setPriority منتقل شد.

پایین‌ترین اولویت پخش جریان

public static final int STREAM_PRIORITY_LOWEST = 1

اولویت جریان بسیار پایین. به setPriority منتقل شد.

اولویت پخش متوسط

public static final int STREAM_PRIORITY_MEDIUM = 3

اولویت جریان متوسط. به setPriority ارسال شد. این اولویت پیش‌فرض داده شده به جریان است.

سازندگان عمومی

سازنده

public Builder()

روش‌های عمومی

اضافه کردن هدر

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

یک هدر درخواست اضافه می‌کند. برای تسهیل زنجیره‌سازی، سازنده را برمی‌گرداند.

پارامترها
String header

نام سربرگ

String value

مقدار هدر

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی

حاشیه‌نویسی درخواست اضافه

public BidirectionalStream.Builder addRequestAnnotation(Object annotation)

شیء annotation را با این درخواست مرتبط می‌کند. می‌تواند بیش از یک مورد اضافه کند. به RequestFinishedInfo.Listener ارسال می‌شود، getAnnotations مراجعه کنید.

پارامترها
Object annotation

یک شیء برای ارسال به RequestFinishedInfo.Listener با RequestFinishedInfo .

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی.

bindToNetwork

public BidirectionalStream.Builder bindToNetwork(long networkHandle)

درخواست را به شناسه شبکه مشخص شده متصل می‌کند. Cronet این درخواست را فقط با استفاده از شبکه مرتبط با این شناسه ارسال می‌کند. اگر این شبکه قطع شود، درخواست با شکست مواجه می‌شود، خطای دقیق به مرحله پردازش درخواست هنگام قطع شبکه بستگی دارد. شناسه‌های شبکه را می‌توان از طریق Network#getNetworkHandle دریافت کرد. فقط از اندروید مارشمالو به بعد در دسترس است.

پارامترها
long networkHandle

شناسه شبکه‌ای که درخواست به آن متصل می‌شود. برای لغو اتصال، UNBIND_NETWORK_HANDLE را مشخص کنید.

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی.

ساختن

public abstract BidirectionalStream build()

با استفاده از پیکربندی این Builder یک BidirectionalStream ایجاد می‌کند. سپس BidirectionalStream برگردانده شده می‌تواند با فراخوانی start آغاز شود.

بازگشت‌ها
BidirectionalStream

با استفاده از پیکربندی این Builder BidirectionalStream ساخته شد

هدرهای درخواست تأخیری تا اولین تخلیه

public abstract BidirectionalStream.Builder delayRequestHeadersUntilFirstFlush(
    boolean delayRequestHeadersUntilFirstFlush
)

ارسال هدرهای درخواست را تا زمان فراخوانی flush به تأخیر می‌اندازد. این پرچم در حال حاضر فقط زمانی که QUIC مذاکره می‌شود، رعایت می‌شود. وقتی درست باشد، QUIC در صورت امکان، فریم هدر درخواست را به همراه فریم(های) داده به صورت یک بسته واحد ارسال می‌کند.

پارامترها
boolean delayRequestHeadersUntilFirstFlush

اگر درست باشد، ارسال هدرهای درخواست تا زمان فراخوانی flush() به تأخیر می‌افتد.

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی.

متد setHttp

public abstract BidirectionalStream.Builder setHttpMethod(String method)

متد HTTP را برای درخواست تنظیم می‌کند. برای تسهیل زنجیره‌سازی، سازنده را برمی‌گرداند.

پارامترها
String method

روشی که برای درخواست استفاده می‌شود. پیش‌فرض «POST» است.

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی

اولویت را تنظیم کنید

public abstract BidirectionalStream.Builder setPriority(int priority)

اولویت جریان را تنظیم می‌کند که باید یکی از مقادیر STREAM_PRIORITY_* باشد. اگر این متد فراخوانی نشود، اولویت STREAM_PRIORITY_MEDIUM به جریان داده می‌شود.

پارامترها
int priority

اولویت جریان که باید یکی از مقادیر STREAM_PRIORITY_* باشد.

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی.

تنظیم آمار ترافیک

public BidirectionalStream.Builder setTrafficStatsTag(int tag)

تگ android.net.TrafficStats را برای استفاده هنگام محاسبه ترافیک سوکت ناشی از این درخواست تنظیم می‌کند. برای اطلاعات بیشتر به android.net.TrafficStats مراجعه کنید. اگر هیچ تگی تنظیم نشده باشد (مثلاً این متد فراخوانی نشده باشد)، اندروید ترافیک سوکت ناشی از این درخواست را طوری محاسبه می‌کند که انگار مقدار تگ روی ۰ تنظیم شده است.

نکته: تنظیم یک تگ، اشتراک‌گذاری سوکت‌ها با درخواست‌ها با تگ‌های دیگر را ممنوع می‌کند، که ممکن است با جلوگیری از اشتراک‌گذاری اتصال، بر عملکرد تأثیر منفی بگذارد. به عبارت دیگر، استفاده از سوکت‌های مالتی‌پلکس (مثلاً HTTP/2 و QUIC) فقط در صورتی مجاز خواهد بود که همه درخواست‌ها دارای تگ سوکت یکسان باشند.

پارامترها
int tag

مقدار برچسبی که هنگام محاسبه ترافیک سوکت ناشی از این درخواست استفاده می‌شود. برچسب‌های بین 0xFFFFFF00 و 0xFFFFFFFF رزرو شده و به صورت داخلی توسط سرویس‌های سیستمی مانند android.app.DownloadManager هنگام انجام ترافیک از طرف یک برنامه استفاده می‌شوند.

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی.

شناسه‌ی آمار ترافیک (setTrafficStatsUid)

public BidirectionalStream.Builder setTrafficStatsUid(int uid)

شناسه کاربری (UID) خاصی را برای استفاده هنگام محاسبه ترافیک سوکت ناشی از این درخواست تنظیم می‌کند. برای اطلاعات بیشتر به android.net.TrafficStats مراجعه کنید. برای استفاده هنگام انجام عملیاتی از طرف برنامه دیگر طراحی شده است. تماس گیرنده باید مجوز MODIFY_NETWORK_ACCOUNTING را داشته باشد. به طور پیش فرض، ترافیک به شناسه کاربری (UID) تماس گیرنده نسبت داده می‌شود.

نکته: تنظیم یک UID، اشتراک‌گذاری سوکت‌ها با درخواست‌ها با UIDهای دیگر را ممنوع می‌کند، که ممکن است با جلوگیری از اشتراک‌گذاری اتصال، بر عملکرد تأثیر منفی بگذارد. به عبارت دیگر، استفاده از سوکت‌های مالتی‌پلکس (مثلاً HTTP/2 و QUIC) فقط در صورتی مجاز خواهد بود که همه درخواست‌ها دارای مجموعه UID یکسانی باشند.

پارامترها
int uid

شناسه کاربری (UID) برای نسبت دادن ترافیک سوکت ناشی از این درخواست.

بازگشت‌ها
BidirectionalStream.Builder

سازنده برای تسهیل زنجیره‌سازی.