ConnectionMigrationOptions.Builder

public class ConnectionMigrationOptions.Builder


ConnectionMigrationOptions 的构建器。

摘要

公共方法

ConnectionMigrationOptions.Builder

设置当 Cronet 检测到当前使用的路径性能下降时,是否可以将连接迁移到备用网络。

ConnectionMigrationOptions.Builder

允许在服务器请求时将连接迁移到备用服务器地址。

ConnectionMigrationOptions

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

ConnectionMigrationOptions.Builder
enableDefaultNetworkMigration(
    boolean enableDefaultNetworkConnectionMigration
)

在默认网络发生更改时,可迁移连接。

ConnectionMigrationOptions.Builder

如果当前路径的性能不佳,则可以迁移连接。

ConnectionMigrationOptions.Builder

配置是否应启用空闲连接的迁移。

ConnectionMigrationOptions.Builder
@ConnectionMigrationOptions.Experimental
retryPreHandshakeErrorsOnNonDefaultNetwork(
    boolean retryPreHandshakeErrorsOnAlternateNetwork
)

设置是否应在备用网络上重试出现预握手错误的连接。

ConnectionMigrationOptions.Builder
@ConnectionMigrationOptions.Experimental
setIdleConnectionMigrationPeriodSeconds(
    long idleConnectionMigrationPeriodSeconds
)

设置连接仍会迁移的最长空闲时间段(以秒为单位)。

ConnectionMigrationOptions.Builder

设置在现有连接遇到路径降级时迁移到非默认网络的最大次数。

ConnectionMigrationOptions.Builder
@ConnectionMigrationOptions.Experimental
setMaxTimeOnNonDefaultNetworkSeconds(
    long maxTimeOnNonDefaultNetworkSeconds
)

设置了急切迁移的连接在迁移回非默认网络之前应保留在该网络上的最长时长。

ConnectionMigrationOptions.Builder

设置在遇到写入错误时迁移到非默认网络的最大次数。

公共方法

allowNonDefaultNetworkUsage

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder allowNonDefaultNetworkUsage(boolean enable)

设置当 Cronet 检测到当前使用的路径性能下降时,是否可以将连接迁移到备用网络。

注意:此设置可能会导致在非默认按流量计费的网络上发送请求。请确保谨慎使用按流量计费的网络,并微调 setMaxPathDegradingNonDefaultNetworkMigrationsCountsetMaxTimeOnNonDefaultNetworkSeconds 等参数,以限制在非默认网络上花费的时间。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

allowServerMigration

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder allowServerMigration(boolean allowServerMigration)

允许在服务器请求时将连接迁移到备用服务器地址。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

build

public ConnectionMigrationOptions build()

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

enableDefaultNetworkMigration

public ConnectionMigrationOptions.Builder enableDefaultNetworkMigration(
    boolean enableDefaultNetworkConnectionMigration
)

在默认网络发生更改时,可迁移连接。如果启用,当平台指示默认网络正在更改时,有效的 QUIC 连接将迁移到新网络。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

enablePathDegradationMigration

public ConnectionMigrationOptions.Builder enablePathDegradationMigration(boolean enable)

如果当前路径的性能不佳,则可以迁移连接。

根据其他配置,这可能会导致连接迁移到同一默认网络或非默认网络。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

migrateIdleConnections

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder migrateIdleConnections(boolean migrateIdleConnections)

配置是否应启用空闲连接迁移。

如果设置为 true,系统也会迁移空闲连接,但前提是这些连接的空闲时间不会过长。此设置适用于所有连接迁移类型。可以使用 setIdleConnectionMigrationPeriodSeconds 自定义连接仍可迁移的最长空闲时间。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

retryPreHandshakeErrorsOnNonDefaultNetwork

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder retryPreHandshakeErrorsOnNonDefaultNetwork(
    boolean retryPreHandshakeErrorsOnAlternateNetwork
)

设置是否应在备用网络上重试出现预握手错误的连接。

如果为 true,则在握手确认之前,如果默认网络失败,可能会在备用网络上建立新连接。

注意:与 allowNonDefaultNetworkUsage 类似,此设置可能会导致在非默认按流量计费的网络上发送请求。请谨慎使用!

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

setIdleConnectionMigrationPeriodSeconds

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder setIdleConnectionMigrationPeriodSeconds(
    long idleConnectionMigrationPeriodSeconds
)

设置连接仍会迁移的最长空闲时间段(以秒为单位)。此设置适用于所有连接迁移类型。

仅在启用 migrateIdleConnections 时相关。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

setMaxPathDegradingNonDefaultNetworkMigrationsCount

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder setMaxPathDegradingNonDefaultNetworkMigrationsCount(
    int maxPathDegradingEagerMigrationsCount
)

设置在现有连接遇到路径降级时迁移到非默认网络的最大次数。按每个网络每次连接累计计算。

仅在启用 allowNonDefaultNetworkUsage 时相关。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

setMaxTimeOnNonDefaultNetworkSeconds

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder setMaxTimeOnNonDefaultNetworkSeconds(
    long maxTimeOnNonDefaultNetworkSeconds
)

设置了急切迁移的连接在迁移回之前应在非默认网络上保留的最长时长。此时间不是累积时间,每次从默认网络迁移到其他网络时,系统都会单独测量迁移时间并与此值进行比较。

仅在启用 allowNonDefaultNetworkUsage 时相关。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用

setMaxWriteErrorNonDefaultNetworkMigrationsCount

@ConnectionMigrationOptions.Experimental
public ConnectionMigrationOptions.Builder setMaxWriteErrorNonDefaultNetworkMigrationsCount(
    int maxWriteErrorEagerMigrationsCount
)

设置在遇到写入错误时迁移到非默认网络的最大次数。按每个网络每次连接累计计算。

仅在启用 allowNonDefaultNetworkUsage 时相关。

返回
ConnectionMigrationOptions.Builder

此构建器,用于链式调用