CronetProvider

public abstract class CronetProvider

已知的直接子類別
HttpEngineNativeProvider

Cronet 供應商實作,可從 Android 平台載入 HttpEngine 實作。

JavaCronetProvider

實作 CronetProvider,用於建立 CronetEngine.Builder,以建構 CronetEngine 的 Java 實作項目。


提供建立 CronetEngine.Builder 執行個體的工廠方法。 CronetEngine.Builder 例項可用於建立特定 CronetEngine 實作項目。如要取得可用 CronetProvider 清單,請呼叫 getAllProviderInfos

注意:這個類別適用於想要選取特定 Cronet 實作項目的進階使用者。大多數使用者應直接使用 newCronetEngine.Builder。

摘要

常數

static final String
PROVIDER_NAME_APP_PACKAGED = "App-Packaged-Cronet-Provider"

getNameCronetProvider 傳回的字串,提供封裝在應用程式中的原生 Cronet 實作。

static final String
PROVIDER_NAME_FALLBACK = "Fallback-Cronet-Provider"

getNameCronetProvider 傳回的字串,可根據系統的 java.net.HttpURLConnection 實作提供 Cronet 實作。

static final String
PROVIDER_NAME_HTTPENGINE_NATIVE = "HttpEngine-Native-Provider"

getNameCronetProvider 傳回的字串,根據平台中現有的 HttpEngine 實作項目提供 Cronet 實作項目。

受保護的欄位

final Context

受保護的建構函式

公用方法

abstract CronetEngine.Builder

建立並傳回 CronetEngine.Builder 的例項。

static List<CronetProvider>

傳回所有可用 CronetProvider 的不可修改清單。

abstract String

傳回供應商名稱。

abstract String

傳回供應商版本。

abstract boolean

傳回供應器是否已啟用,以及是否可用於例項化 Cronet 引擎。

String

常數

PROVIDER_NAME_APP_PACKAGED

public static final String PROVIDER_NAME_APP_PACKAGED = "App-Packaged-Cronet-Provider"

getNameCronetProvider 傳回的字串,提供封裝在應用程式中的原生 Cronet 實作。相較於備援 Cronet 實作 (請參閱 PROVIDER_NAME_FALLBACK),這項實作可大幅提升效能。

PROVIDER_NAME_FALLBACK

public static final String PROVIDER_NAME_FALLBACK = "Fallback-Cronet-Provider"

getNameCronetProvider 傳回的字串,可根據系統的 java.net.HttpURLConnection 實作提供 Cronet 實作。相較於原生 Cronet 實作,這種實作方式的效能會大幅降低 (請參閱 PROVIDER_NAME_APP_PACKAGED)。

PROVIDER_NAME_HTTPENGINE_NATIVE

public static final String PROVIDER_NAME_HTTPENGINE_NATIVE = "HttpEngine-Native-Provider"

getNameCronetProvider 傳回的字串,根據平台中現有的 HttpEngine 實作項目提供 Cronet 實作項目。這項實作方式不會提供被視為實作專屬的功能,也就是存取 netlog 和內部指標。此外,系統不保證支援實驗功能 (與任何其他 Cronet 提供者相同)。

受保護的欄位

mContext

protected final Context mContext

受保護的建構函式

CronetProvider

protected CronetProvider(Context context)

公用方法

createBuilder

public abstract CronetEngine.Builder createBuilder()

建立並傳回 CronetEngine.Builder 的例項。

注意:這個類別適用於想要選取特定 Cronet 實作項目的進階使用者。大多數使用者應直接使用 newCronetEngine.Builder。
傳回
CronetEngine.Builder

CronetEngine.Builder

擲回
java.lang.IllegalStateException

如果供應器未啟用 (請參閱 isEnabled

getAllProviders

public static List<CronetProvidergetAllProviders(Context context)

傳回所有可用 CronetProvider 的不可修改清單。系統傳回供應商時,不會依特定順序排列。部分傳回的供應商可能處於停用狀態,應由呼叫端啟用。查看《isEnabled》。

傳回
List<CronetProvider>

可用的供應商清單。

getName

public abstract String getName()

傳回供應商名稱。知名供應商名稱包括:

傳回
String

供應商名稱。

getVersion

public abstract String getVersion()

傳回供應商版本。如果有多個供應商可用,您可以使用版本選取最新供應商。

傳回
String

provider 版本。

isEnabled

public abstract boolean isEnabled()

傳回供應器是否已啟用,以及是否可用於例項化 Cronet 引擎。如果供應商過時 (舊於 API),就可能需要更新,這也是供應商遭到停用的原因之一。如需啟用程序,請參閱供應商說明文件。

傳回
boolean

如果供應器已啟用,則為 true

toString

public String toString()