DnsOptions.StaleDnsOptions.Builder

public static final class DnsOptions.StaleDnsOptions.Builder extends Object

用于 DnsOptions.StaleDnsOptions 的构建器。

公共方法摘要

DnsOptions.StaleDnsOptions.Builder
allowCrossNetworkUsage(boolean allowCrossNetworkUsage)
设置是否返回来自其他网络的解析结果。
DnsOptions.StaleDnsOptions
build()
基于此构建器中的值创建并返回最终的 DnsOptions.StaleDnsOptions 实例。
DnsOptions.StaleDnsOptions.Builder
setFreshLookupTimeout(Duration freshLookupTimeout)
DnsOptions.StaleDnsOptions.Builder
setFreshLookupTimeoutMillis(long freshLookupTimeoutMillis)
设置等待 DNS 请求返回的时间(以毫秒为单位),超过此时长后将转而使用旧结果。
DnsOptions.StaleDnsOptions.Builder
setMaxExpiredDelayMillis(long maxExpiredDelayMillis)
设置考虑使用过期结果的时间(以毫秒为单位),该时间是相对于过期时间计算的。
DnsOptions.StaleDnsOptions.Builder
setMaxExpiredDelayMillis(Duration maxExpiredDelay)
setMaxExpiredDelayMillis(long) 相同,但使用 Duration
DnsOptions.StaleDnsOptions.Builder
useStaleOnNameNotResolved(boolean useStaleOnNameNotResolved)
设置当网络解析器无法解析主机名时,是否允许使用旧的 DNS 结果。

继承方法摘要

公共方法

public DnsOptions.StaleDnsOptions.Builder allowCrossNetworkUsage (boolean allowCrossNetworkUsage)

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

参数
allowCrossNetworkUsage
返回
  • 构建器,用于链式调用

public DnsOptions.StaleDnsOptions build ()

基于此构建器中的值创建并返回最终的 DnsOptions.StaleDnsOptions 实例。

public DnsOptions.StaleDnsOptions.Builder setFreshLookupTimeout (Duration freshLookupTimeout)

参数
freshLookupTimeout
返回
  • 构建器,用于链式调用

public DnsOptions.StaleDnsOptions.Builder setFreshLookupTimeoutMillis (long freshLookupTimeoutMillis)

设置等待 DNS 请求返回的时间(以毫秒为单位),超过此时长后将转而使用旧结果。如果设置为零,则会立即返回旧结果,但会在后台继续进行 DNS 请求以更新缓存。

参数
freshLookupTimeoutMillis
返回
  • 构建器,用于链式调用

public DnsOptions.StaleDnsOptions.Builder setMaxExpiredDelayMillis (long maxExpiredDelayMillis)

设置考虑使用过期结果的时间(以毫秒为单位),该时间是相对于过期时间计算的。将值设置为零表示可以无限期地使用过期记录。

参数
maxExpiredDelayMillis
返回
  • 构建器,用于链式调用

public DnsOptions.StaleDnsOptions.Builder setMaxExpiredDelayMillis (Duration maxExpiredDelay)

setMaxExpiredDelayMillis(long) 相同,但使用 Duration

参数
maxExpiredDelay
返回
  • 构建器,用于链式调用

public DnsOptions.StaleDnsOptions.Builder useStaleOnNameNotResolved (boolean useStaleOnNameNotResolved)

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

根据用例的不同,如果 Cronet 快速检测到新的失败,则可能希望使用此失败(因为从技术上讲它是更新鲜的结果,并且我们快速获得了此类新鲜结果);或者,宁愿使用任何结果(即使是旧结果)也不愿使用失败。

参数
useStaleOnNameNotResolved
返回
  • 构建器,用于链式调用