DnsOptions.StaleDnsOptions.Builder

public final class DnsOptions.StaleDnsOptions.Builder


StaleDnsOptions 的构建器。

摘要

公共方法

DnsOptions.StaleDnsOptions.Builder
allowCrossNetworkUsage(boolean allowCrossNetworkUsage)

设置是否返回源自其他网络的结果。

DnsOptions.StaleDnsOptions

根据此构建器中的值创建并返回最终的 StaleDnsOptions 实例。

DnsOptions.StaleDnsOptions.Builder

setFreshLookupTimeoutMillis 相同,但使用 java.time.Duration

DnsOptions.StaleDnsOptions.Builder
setFreshLookupTimeoutMillis(long freshLookupTimeoutMillis)

设置在改用过时结果之前,等待 DNS 请求返回的时间(以毫秒为单位)。

DnsOptions.StaleDnsOptions.Builder

setMaxExpiredDelayMillis 相同,但使用 java.time.Duration

DnsOptions.StaleDnsOptions.Builder
setMaxExpiredDelayMillis(long maxExpiredDelayMillis)

设置在过期后多长时间(以毫秒为单位)考虑使用过期结果。

DnsOptions.StaleDnsOptions.Builder
useStaleOnNameNotResolved(boolean useStaleOnNameNotResolved)

设置在网络解析器无法解析主机名时,是否允许使用过时的 DNS 结果。

公共方法

allowCrossNetworkUsage

public DnsOptions.StaleDnsOptions.Builder allowCrossNetworkUsage(boolean allowCrossNetworkUsage)

设置是否返回源自其他网络的结果。通常,Cronet 会在切换连接时(例如在两个 Wi-Fi 网络之间或从 Wi-Fi 切换到 4G 时)完全清除 DNS 缓存。

返回
DnsOptions.StaleDnsOptions.Builder

用于链式调用的构建器

build

public DnsOptions.StaleDnsOptions build()

根据此构建器中的值创建并返回最终的 StaleDnsOptions 实例。

setFreshLookupTimeout

@RequiresApi(value = VERSION_CODES.O)
public DnsOptions.StaleDnsOptions.Builder setFreshLookupTimeout(@NonNull Duration freshLookupTimeout)

setFreshLookupTimeoutMillis 相同,但使用 java.time.Duration

返回
DnsOptions.StaleDnsOptions.Builder

用于链式调用的构建器

setFreshLookupTimeoutMillis

public DnsOptions.StaleDnsOptions.Builder setFreshLookupTimeoutMillis(long freshLookupTimeoutMillis)

设置在改用过时结果之前,等待 DNS 请求返回的时间(以毫秒为单位)。如果设置为零,则会立即返回过时结果,但会在后台继续执行 DNS 请求以更新缓存。

返回
DnsOptions.StaleDnsOptions.Builder

用于链式调用的构建器

setMaxExpiredDelay

@RequiresApi(value = VERSION_CODES.O)
public DnsOptions.StaleDnsOptions.Builder setMaxExpiredDelay(@NonNull Duration maxExpiredDelay)

setMaxExpiredDelayMillis 相同,但使用 java.time.Duration

返回
DnsOptions.StaleDnsOptions.Builder

用于链式调用的构建器

setMaxExpiredDelayMillis

public DnsOptions.StaleDnsOptions.Builder setMaxExpiredDelayMillis(long maxExpiredDelayMillis)

设置在过期后多长时间(以毫秒为单位)考虑使用过期结果。将值设置为零意味着可以无限期地使用过期记录。

返回
DnsOptions.StaleDnsOptions.Builder

用于链式调用的构建器

useStaleOnNameNotResolved

public DnsOptions.StaleDnsOptions.Builder useStaleOnNameNotResolved(boolean useStaleOnNameNotResolved)

设置在网络解析器无法解析主机名时,是否允许使用过时的 DNS 结果。

根据使用情形,如果 Cronet 快速发现新的失败,则可能需要使用该失败,因为从技术上讲,它是更新鲜的结果,并且我们很快就获得了此类新鲜结果;或者,宁愿使用任何结果(即使是过时的结果),也不愿使用失败。

返回
DnsOptions.StaleDnsOptions.Builder

用于链式调用的构建器