CronetProvider

abstract class CronetProvider

已知的直接子类
HttpEngineNativeProvider

一种 Cronet 提供程序实现,可从 Android 平台加载 HttpEngine 实现。

JavaCronetProvider

CronetProvider 的实现,用于创建 CronetEngine.Builder 以构建 CronetEngine 的基于 Java 的实现。


提供用于创建 CronetEngine.Builder 实例的工厂方法。 CronetEngine.Builder 实例可用于创建特定的 CronetEngine 实现。如需获取可用 CronetProvider 的列表,请调用 getAllProviderInfos

注意:此类适用于想要选择特定 Cronet 实现的高级用户。大多数用户只需使用 newCronetEngine.Builder。

摘要

常量

const String!
PROVIDER_NAME_APP_PACKAGED = "App-Packaged-Cronet-Provider"

getNameCronetProvider 返回的字符串,用于提供封装在应用中的原生 Cronet 实现。

const String!
PROVIDER_NAME_FALLBACK = "Fallback-Cronet-Provider"

getNameCronetProvider 返回的字符串,该字符串提供基于系统 java.net.HttpURLConnection 实现的 Cronet 实现。

const String!
PROVIDER_NAME_HTTPENGINE_NATIVE = "HttpEngine-Native-Provider"

getNameCronetProvider 返回的字符串,该字符串提供基于平台中存在的 HttpEngine 实现的 Cronet 实现。

受保护的构造函数

公共函数

abstract CronetEngine.Builder!

创建并返回 CronetEngine.Builder 的实例。

java-static (Mutable)List<CronetProvider!>!

返回所有可用 CronetProvider 的不可修改列表。

abstract String!

返回提供商名称。

abstract String!

返回提供程序版本。

abstract Boolean

返回提供程序是否已启用,以及是否可用于实例化 Cronet 引擎。

String!

受保护的媒体资源

Context!

常量

PROVIDER_NAME_APP_PACKAGED

const val PROVIDER_NAME_APP_PACKAGED = "App-Packaged-Cronet-Provider": String!

getNameCronetProvider 返回的字符串,用于提供封装在应用中的原生 Cronet 实现。与回退 Cronet 实现相比,此实现可提供显著更高的性能(请参阅 PROVIDER_NAME_FALLBACK)。

PROVIDER_NAME_FALLBACK

const val PROVIDER_NAME_FALLBACK = "Fallback-Cronet-Provider": String!

getNameCronetProvider 返回的字符串,该字符串提供基于系统 java.net.HttpURLConnection 实现的 Cronet 实现。与原生 Cronet 实现相比,此实现提供的性能明显下降(请参阅 PROVIDER_NAME_APP_PACKAGED)。

PROVIDER_NAME_HTTPENGINE_NATIVE

const val PROVIDER_NAME_HTTPENGINE_NATIVE = "HttpEngine-Native-Provider": String!

getNameCronetProvider 返回的字符串,该字符串提供基于平台中存在的 HttpEngine 实现的 Cronet 实现。此实现不提供被视为特定于实现的功能,即对 netlog 和内部指标的访问权限。此外,与任何其他 Cronet 提供程序一样,我们无法保证对实验性功能的支持。

受保护的构造函数

CronetProvider

protected CronetProvider(context: Context!)

公共函数

createBuilder

abstract fun createBuilder(): CronetEngine.Builder!

创建并返回 CronetEngine.Builder 的实例。

注意:此类适用于想要选择特定 Cronet 实现的高级用户。大多数用户只需使用 newCronetEngine.Builder。
返回
CronetEngine.Builder!

CronetEngine.Builder

抛出
java.lang.IllegalStateException

如果提供程序未启用(请参阅 isEnabled)。

getAllProviders

java-static fun getAllProviders(context: Context!): (Mutable)List<CronetProvider!>!

返回所有可用 CronetProvider 的不可修改列表。返回的提供商没有特定的顺序。返回的部分提供程序可能处于已停用状态,应由调用方启用。请参阅isEnabled

返回
(Mutable)List<CronetProvider!>!

可用提供商的列表。

getName

abstract fun getName(): String!

返回提供商名称。知名提供商名称包括:

返回
String!

提供方名称。

getVersion

abstract fun getVersion(): String!

返回提供程序版本。如果多个提供方可用,则可以使用版本来选择最新的可用提供方。

返回
String!

提供方版本。

isEnabled

abstract fun isEnabled(): Boolean

返回提供程序是否已启用,以及是否可用于实例化 Cronet 引擎。提供方过时(比 API 旧)且需要更新是提供方可能被停用的一个潜在原因。请阅读提供商文档,了解启用程序。

返回
Boolean

如果提供程序已启用,则为 true

toString

fun toString(): String!

受保护的媒体资源

mContext

protected val mContextContext!