MpAccClient
MpAccClient属性
属性 | 描述 |
shared | MpAccClient 单例 |
accType | 加速模式: .vpn / .socks5 / .unowned |
isStart | 是否处于加速状态,当 status == .started 时为 true |
status | 加速状态: .initialize / .launching / .launched / .started |
accConfig | 当前加速所使用的 Config |
MpAccClient方法
方法 | 描述 |
register(mode:completion:) | 注册(可以提高 start 时的速度) |
start(config:) | 发起加速 |
stop | 停止加速 |
getVpnStatus | 获取 VPN 状态,异步返回 |
resumeVpn | APP 重启后可调用此接口恢复 VPN 事件监听 |
updateUDPDirect | 更新 UDP 直连状态 |
updateTCPDirect | 更新 TCP 直连状态 |
setupLogDelegate | 设置日志代理,接管日志处理 |
setupLogLevel | 设置日志级别 |
setupCallbackQueue | 设置回调队列,默认为子线程 |
registerAccCallback | 注册加速状态监听 |
unRegisterAccCallback | 取消加速状态监听 |
setupDatakey | 设置公有云注册参数 |
setSign | 设置签名和应用 ID |
setGatewayId | 设置网关 ID |
enableOverseas | 切换国际站,默认为 false 国内站 |
setupRegisterConnectTimeout | 设置注册超时时长,默认10s |
startMeasure | 开启网络测量 |
stopMeasure | 停止网络测量 |
addEventInfo | 添加自定义上报事件 |
registerMeasureCallback | 注册网络测量回调监听 |
unRegisterMeasureCallback | 取消网络测量回调监听 |
getSdkVersion | 获取 SDK 版本号 |
register
预注册(可以提高 start 时的速度)
func register(mode: AccMode, completion: ((_ error: NSError?) -> Void)?)
参数 | 描述 |
mode | 加速模式:枚举 AccMode |
completion | 预注册结果 |
start(config:)
发起加速。
func start(config: AccConfig)
参数 | 描述 |
config |
stop
停止加速。
func stop()
getVpnStatus
获取 VPN 状态,异步返回。
func getVpnStatus(_ completion: @escaping (_ status: NEVPNStatus) -> Void)
参数 | 描述 |
completion | 异步回调 status,参考值如下: 未配置:NEVPNStatus.invalid 已连接:NEVPNStatus.connected 正在连接:NEVPNStatus.connecting 已断开连接:NEVPNStatus.disconnected 正在断开连接:NEVPNStatus.disconnecting 正在重启:NEVPNStatus.reasserting |
resumeVpn
APP 重启后可调用此接口恢复 VPN 事件监听。
func resumeVpn()
updateUDPDirect
更新 UDP 直连状态。
// 异步方法func updateUDPDirect(_ direct: Bool, completion: @escaping (_ result: Bool) -> Void)// 同步方法 (vpn 模式下不可以在主线程中调用)func updateUDPDirect(_ direct: Bool) -> Bool
参数 | 描述 |
direct | 是否直连,切换为 false 时,会查询接入网关负载状态,耗时操作,建议放在子线程执行 |
completion | 结束回调, result 为 true 代表更新成功 |
updateTCPDirect
更新 TCP 直连状态。
// 异步模式func updateTCPDirect(_ direct: Bool, completion: @escaping (_ result: Bool) -> Void)// 同步模式 (vpn 模式下不可以在主线程中调用)func updateTCPDirect(_ direct: Bool) -> Bool
参数 | 描述 |
direct | 是否直连 |
completion | 结束回调, result 为 true 代表更新成功 |
setupLogDelegate
设置日志代理,接管日志处理。
func setupLogDelegate(_ delegate: MpLoggerDelegate)
参数 | 描述 |
delegate | 日志代理 |
setupLogLevel
设置日志级别。
func setupLogLevel(_ logLevel: LogLevel)
参数 | 描述 |
logLevel | 日志级别枚举 |
setupCallbackQueue
设置回调队列。
func setupCallbackQueue(_ queue: DispatchQueue)
参数 | 描述 |
queue | 回调队列,默认为主队列 |
registerAccCallback
注册加速状态监听。
func registerAccCallback(_ callback: AccCallback)
参数 | 描述 |
callback | 加速状态回调接口 |
unRegisterAccCallback
取消加速状态监听。
func unRegisterAccCallback(_ callback: AccCallback)
参数 | 描述 |
callback | 加速状态回调接口 |
setupDataKey
设置公有云注册参数。
func setupDatakey(_ datakey: String, deviceId: String)
参数 | 描述 |
datakey | 设备密钥 |
deviceId | 设备唯一标识 |
setSign
设置应用签名鉴权。
func setSign(appId: String, sign: String)
参数 | 描述 |
appId | 应用 ID |
sign | 签名 |
setGatewayId
设置网关 ID。
func setGatewayId(_ gwId: String)
参数 | 描述 |
gwId | 网关 ID |
enableOverseas
切换国际站,默认为 false 国内站。
func enableOverseas(enabled: Bool)
参数 | 描述 |
enabled | 是否切换国际站 false 国内站 true 国际站 |
setupRegisterConnectTimeout
设置注册超时时长,默认10s。
func setupRegisterConnectTimeout(_ connectTimeout: Int)
参数 | 描述 |
connectTimeout | 超时时长 |
startMeasure
开启网络测量。
func startMeasure(measureConfig: MpMeasureConfig)
参数 | 描述 |
measureConfig | 测速配置 |
stopMeasure
停止网络测量。
func stopMeasure()
addEventInfo
添加自定义上报事件。
func addEventInfo(event: Int, msg: String)
参数 | 描述 |
event | 事件标号 |
msg | 事件描述 |
registerMeasureCallback
注册网络测量回调监听。
func registerMeasureCallback(_ callback: MpMeasureCallback)
参数 | 描述 |
callback | 测速回调接口 |
unRegisterMeasureCallback
取消网络测量回调监听。
func unRegisterMeasureCallback(_ callback: MpMeasureCallback)
参数 | 描述 |
callback | 测速回调接口 |
getSdkVersion
获取 SDK 版本号。
func getSdkVersion() -> String
MpPacketTunnelManager
VPN 进程接口类。
方法 | 描述 |
startTunnel | 开启 VPN Tunnel,参数透传给 SDK |
stopTunnel | 关闭 VPN Tunnel |
handleAppMessage | 接收主程序消息,参数透传给 SDK |
getSdkVersion | 获取版本号 |
setupLogDelegate | 设置日志代理 |
registerMeasureCallback | 注册网络测速回调监听 |
unRegisterMeasureCallback | 取消网络测速回调监听 |
startTunnel
开启 VPN Tunnel,参数透传给 SDK。
public func startTunnel(packetTunnel: NEPacketTunnelProvider, options: [String : NSObject]?, completionHandler: @escaping (Error?) -> Void)
参数 | 描述 |
packetTunnel | NEPacketTunnelProvider VPN Provider 实例对象 |
options | 透传 SDK 参数,内包含 Config 数据 |
completionHandler | 结束回调 |
stopTunnel
关闭 VPN Tunnel。
func stopTunnel()
handleAppMessage
接收主程序消息,参数透传给 SDK
func handleAppMessage(_ messageData: Data, completionHandler: ((Data?) -> Void)?)
参数 | 描述 |
messageData | 数据二进制,参数透传给 SDK |
completionHandler | 结束回调,参数透传给 SDK |
getSdkVersion
获取版本号。
func getSdkVersion() -> String
setupLogDelegate
设置日志代理。
func setupLogDelegate(_ delegate:MpLoggerDelegate?)
参数 | 描述 |
delegate | 日志代理实例 |
registerMeasureCallback
注册网络测速回调监听。
func registerMeasureCallback(_ callback: MpMeasureCallback)
参数 | 描述 |
callback | 测速回调接口 |
unRegisterMeasureCallback
取消网络测速回调监听。
func unRegisterMeasureCallback(_ callback: MpMeasureCallback)
参数 | 描述 |
callback | 测速回调接口 |
AccCallback
加速状态和事件回调。
方法 | 描述 |
onAccSuccess | 加速成功回调 |
onAccFail | 启动加速失败 |
onAccDataUpdate | 网络速率回调 |
onSummaryInfoUpdate | 加速汇总信息更新 |
onNetworkStateChanged | 网卡链路状态变化回调 |
onAccSuccess
加速成功回调。
func onAccSuccess(ip: String, port: Int) -> Void
参数 | 描述 |
ip | 加速节点 IP |
port | 加速节点端口 |
onAccFail
启动加速失败。
func onAccFail(_ error: NSError) -> Void
参数 | 描述 |
error | 结束加速 或 异常结束,根据 error 判断。 |
onAccDataUpdate
网络速率回调,回调频率由 AccConfig.pingInterval 设置。
func onAccDataUpdate(tRx: Int64, tTx: Int64, pathDetails: [MpPathDetail]) -> Void
参数 | 描述 |
tRx | 总接收数据量(单位:byte) |
tTx | 总发送数据量(单位:byte) |
pathDetails | 链路详细信息 |
onSummaryInfoUpdate
加速汇总信息更新。
func onSummaryInfoUpdate(_ summaryInfo: String) -> Void
参数 | 描述 |
summaryInfo | 加速汇总信息 |
onNetworkStateChanged
网卡链路状态变化回调。
func onNetworkStateChanged(type: MpInterfaceType, available: Bool, ip: String) -> Void
参数 | 描述 |
type | 0:mobile 1:Wi-Fi |
available | 网卡是否可用: true:可用 false:不可用 |
ip | 网卡 IP(IPv4),若不可用为空 |
MpMeasureCallback
测速回调。
方法 | 描述 |
onStartMpAcc | 建议开启加速 |
onStopMpAcc | 建议关闭加速 |
onNoPolicy | 当前网络状态无策略可用 |
onAccException | 加速链路出现异常(此种情况 SDK 会主动关闭加速,切回正常模式) |
onRttChanged | 旁路 udping rtt 时延回调 |
onAccStateChanged | 加速状态改变回调 |
onStartMpAcc
建议开启加速。
func onStartMpAcc(code: Int) -> Void
参数 | 描述 |
code | 触发码 0:聚合模式触发(聚合模式始终触发) 1:时延异常触发 2:丢包率异常触发 3:抖动异常触发 |
onStopMpAcc
建议关闭加速。
func onStopMpAcc(code: Int, msg: String) -> Void
参数 | 描述 |
code | 触发码 1:单网卡触发 2:无优化触发 3:无网络触发 4:加速网卡和实际活跃网卡不一致 |
msg | 触发信息 |
onNoPolicy
当前网络状态无策略可用。
func onNoPolicy(code: Int, message: String?) -> Void
参数 | 描述 |
code | 触发码 2:单 Wi-Fi 3:无网络可用 4:内部错误 -12:认证超时 -13:认证异常 -19:测速服务失败 -23:账户认证失败 |
message | 触发信息,若 message 不为空,则以 message 信息为主 |
onAccException
加速链路出现异常(此种情况 SDK 会主动关闭加速,切回正常模式)。
func onAccException(errorCode: Int, msg: String) -> Void
参数 | 描述 |
errorCode | 错误码: -6:acc 测速 持续丢包异常 -7:acc 测速 最大时延数异常 -8:acc 测速 对比 Wi-Fi 时延异常 -9:acc 测速 平均时延超出最大阈值 |
msg | 错误信息 |
onRttChanged
旁路 udping rtt 时延回调。
func onRttChanged(type: Int, rtt: Int) -> Void
参数 | 描述 |
type | 网卡种类: 0:mobile 1:Wi-Fi 2:acc |
rtt | 时延(ms) 丢包值为460 |
onAccStateChanged
聚合加速状态改变回调。
func onAccStateChanged(state: Bool, code: Int) -> Void
参数 | 描述 |
state | 加速状态 false:关闭 true:打开 |
code | 0:正常开启 1:正常关闭 2:异常关闭 |
AccPluginManager
插件管理 (暂时只使用在 socks5 加速中)。
方法 | 描述 |
shared | 单例方法 |
setAccProxyPlugin | 设置 SOCKS5 插件 |
getAccProxyPlugin | 获取 SOCKS5 插件实例 |
setLogPlugin | 设置日志插件 |
getLogPlugin | 获取日志插件实例 |
shared
单例方法。
shared
setAccProxyPlugin
设置 SOCKS5 插件。
func setAccProxyPlugin(_ accProxyPlugin: AccProxyPlugin?)
参数 | 描述 |
accProxyPlugin | SOCKS5 插件实例 例如:setAccProxyPlugin(TRTCAccPlugin()) TRTCAccPlugin 可通过导入腾讯提供的插件包获取 |
getAccProxyPlugin
获取 SOCKS5 插件实例。
func getAccProxyPlugin() -> AccProxyPlugin?
setLogPlugin
设置日志插件。
func setLogPlugin(_ logUploadPlugin: AccLogPlugin?)
参数 | 描述 |
logUploadPlugin | 日志插件实例 例如:setLogPlugin(LogPlugin()) LogPlugin 可通过导入腾讯提供的插件包获取 |
getLogPlugin
获取日志插件实例。
func getLogPlugin() -> AccLogPluginModel
Model
AccConfig
属性 | 描述 |
node | 加速节点,私有云情况下必须设置。公有云可选,若设置则优先使用 |
accMode | 加速模式:: 枚举 (AccMode) 聚合 (Bonding) 双发 (Redundant) 实时快切 (FastSwitching) |
pingInterval | onAccDataUpdate 回调间隔时间 |
congestionMode | 拥塞算法 (BBR / CUBIC) |
encryption | 是否加密,默认为 true |
tcpDirect | 是否 TCP 直连,默认为 false |
udpDirect | 是否 UDP 直连,默认为 false |
udpTimeout | UDP 尝试时长 |
maxReconnectTimeout | 连接最长超时时间,超过不再重连,单位:秒 |
accRules | 加速规则 |
priority | 链路优先级 key: 0:mobile 1:Wi-Fi ,priority.put(0,64) 设置 type=0(mobile)的链路优先级是64 value: 优先级为数字0-255, 数字越低优先级越高,默认64。当优先级数字>=128时,表示该链路为备份链路。 |
keepAlive | 设置 acc 是否保活,若保活,则加速状态以 UDP 是否加速为准 |
networkConditions | 启动加速所需网络条件,默认无条件 |
groupId | AppGroup |
vpnName | VPN 名称 |
dnsServerIp | VPN DNS Server ip 地址,默认地址:119.29.29.29 |
whiteList | 白名单,默认拦截所有 ip |
blackList | 设置黑名单 |
socksProxyPort | socks 代理端口号,默认 3000。如果使用 Acc |
socksUsername | socks5 代理预设用户名 |
socksPassword | socks5 代理预设密码 |
extraParams | 扩展参数,例如 keyId 等,通过扩展参数传递 |
enableMultiNetwork | EO场景,是否开启多网卡,默认为 false false:默认网卡 true:根据设置的 priority 枚举可用网卡,若未设置枚举所有可用网卡 |
addLineType(:) | EO场景,添加加速链路,0-直连,1-EO |
extraParams设置方法
方法 | 描述 |
setBool(_:,forKey:) | 设置 bool 类型的 extraParams 参数 |
setString(_:,forKey:) | 设置 String 类型的 extraParams 参数 |
setStringList(_:,forKey:) | 设置 [String] 类型的 extraParams 参数 |
setInt(_:,forKey:) | 设置 Int 类型的 extraParams 参数 |
setFloat(_:,forKey:) | 设置 Float 类型的 extraParams 参数 |
extraParams支持的参数
KEY值 | 描述 |
私有云相关参数 | |
AccConfig.KEY_SECRET_KEY_ID | [String] 密钥ID |
AccConfig.KEY_CIPHERTEXT | [String] 签名字符串 |
AccConfig.KEY_SIGNATURE | [String] 数字签名 |
链路禁用算法相关参数 | |
AccConfig.KEY_MAX_RTT_THRESHOLD | [Int] 链路时延超过该数值才进行 CheckLatestRTT 判断,单位为 ms ,默认为150ms |
AccConfig.KEY_MIN_RTT_FACTOR | [Float64] 链路最小时延的放大因子,如果当前链路时延>链路最小时延*因子,可认为链路高时延了,默认为15 |
AccConfig.KEY_LATEST_RTT_FACTOR | [Float64] 对比上次采用时延的放大因子,如果当前链路时延>上次采样时延*因子,可认为链路高时延了,默认为5 |
AccConfig.KEY_MIN_WAITING_WHEN_PATH_FAILED | [Int] 禁止链路保持的最小时长,单位为s,默认为3s// 快切 |
快切相关参数 | |
AccConfig.KEY_MIN_SWITCH_RTT | [Int] 针对快切模式,低于该值不触发链路切换,单位为ms,默认为20ms |
AccConfig.KEY_SWITCH_TOLERANCE | [Float64] 针对快切模式, 容忍系数,放大当前路径时延后与其他路径比较,避免频繁切换,默认为1.125 |
AccConfig.KEY_DISABLE_AUTO_SWITCH | [Bool] 针对快切模式, 是否关闭动态切换功能,默认为 false |
AccConfig.KEY_MIN_DELAY_UNTIL_LOST | [Int] 针对快切模式,判断报文丢失的最小时延,超过这个时延才判断是否禁用链路,单位为ms,默认为150ms |
AccConfig.KEY_MAX_DELAY_UNTIL_FAILED | [Int] 针对快切模式,容忍的最大时间阈值,超过该阈值,禁用该链路发包,单位为ms,默认为460ms |
AccConfig.KEY_TIME_REORDERING_FRACTION | [Float64] 针对快切模式,链路时延的放大因子,用于判断链路是否发生了故障,默认为2.25 |
聚合模式相关参数 | |
AccConfig.KEY_MAX_RTT_DISABLE_AGGREGATION | [Int] 针对聚合模式,链路时延高于该数值后,该链路不参与聚合,单位为ms,默认为460ms |
UDP增强聚合 | |
AccConfig.KEY_JITTER_DELAY | [Int] 针对 UDP 增强聚合模式,补偿时延,单位为ms,默认为0ms |
AccConfig.KEY_PATH_IDLE_TIMEOUT | [Int] 针对 UDP 增强聚合模式,路径空闲时长,不参与补偿,单位为s,默认为1s |
AccConfig.KEY_ENABLE_SINGLE_PATH_SMOOTHING | [Bool] 针对 UDP 增强聚合参数,开启后单路径也进行时延平滑,默认false |
AccConfig.KEY_DELAY_FACTOR | [Float64] 针对 UDP 增强聚合参数,用于计算单向平滑时延,默认0.125 |
AccConfig.KEY_OUTER_CWND_GAIN | [Float64] QUIC 拥塞窗口增益系数 |
T2加速 1. AccConfig.KEY_ENABLE_T2ACC 要设置为 true 2. AccConfig.KEY_T2OUT 跨域时要设置,否则可能被墙 3. AccConfig.KEY_T2_APP_ID_LIST 要设置,否则无法匹配规则 4. AccConfig.dnsServerIp 要设置非加密解析的服务器,如:"162.14.21.56"(腾讯国际 dns 服务器) | |
AccConfig.KEY_ENABLE_T2ACC | [Bool] 是否开启 T2 加速, 默认为 false |
AccConfig.KEY_T2OUT | [String] 指定 T2 段出口,默认为空自动路由 |
AccConfig.KEY_T2_APP_ID_LIST | [String] 指定 T2 加速应用: App Id List |
AccConfig.KEY_T2ACC_IP_PREFIX_BLACKLIST | [String] T2 加速 IP CIDR 黑名单(Direct) |
AccConfig.KEY_T2ACC_IP_PREFIX_WHITELIST | [String] T2 加速 IP CIDR 白名单(ACC) |
AccConfig.KEY_T2ACC_DOMAIN_BLACKLIST | [String] T2 加速域名黑名单(Direct) |
AccConfig.KEY_T2ACC_DOMAIN_WHITELIST | [String] T2 加速域名白名单(ACC) |
AccConfig.KEY_T2ACC_DOMAIN_SUFFIX_BLACKLIST | [String] T2 加速域名后缀黑名单(Direct) |
AccConfig.KEY_T2ACC_DOMAIN_SUFFIX_WHITELIST | [String] T2 加速域名后缀白名单(ACC) |
其他 | |
AccConfig.KEY_SERVER_DOMAIN | [String] 证书域名 |
AccConfig.KEY_ALLOW_PRIVATE | [Bool] 允许内网互通 |
AccConfig.KEY_MAX_RETRY_TIMES | [Int] 最大重试次数, 默认 3 次。尽量不要设置为0,否则无网的情况下,可能会产生线程 |
AccConfig.KEY_ENABLE_OBFUSCATED | [Bool]是否开启源站混淆 IP |
AccNode
属性 | 描述 |
ipList | 节点 ip 列表,默认为空 |
port | 节点端口,默认值 -1 |
AccRule
属性 | 描述 |
priority | 设置优先级,值越小优先级越高, 优先级为数字0-255, 数字越低优先级越高,默认64 |
dstIPCIDR | 设置目的IP,支持掩码, 例如10.8.0.0/8, 空值表示匹配任意目的IP地址 |
dstPortRange | 设置目的端口,支持范围, 例如5002-5003, 空值表示匹配任意目的端口 |
proto | 设置协议类型,支持"TCP","UDP", 空值表示匹配任意协议 |
mode | 设置加速模式,支持 1:聚合 2:双发 3:rtc |
MpMeasureConfig
属性 | 描述 |
addr | 测速地址(私有云设置)格式为"IP:PORT",多个探测点以分号区分,例如"172.17.0.4:9000;172.17.0.4:9001" |
t2AccProbeAddr | T2段测速地址 |
time | 滑动窗口测量时间 (ms),默认30000 |
rtt | 时延阈值,默认90 |
loss | 丢包率阈值,默认5 |
jitter | 抖动阈值,默认15 |
quickTime | 快启动窗口时间,默认10000 |
quickRtt | 快启动时延阈值,默认100 |
interval | 测量回调频率,默认1000 |
mode | 加速模式,1:聚合 2:双发 3:rtc。默认2 |
delayRemindTime | 设置延迟提醒时间,单位毫秒,默认10000 |
pingTimeout | 设置 ping 包超时时间,单位:ms |
disableQuickDetect | 设置禁用快速检测 true:禁用 false:不禁用 |
additionalOptions | 设置逃生附件选项 |
disableSlaveLossDetect | 设置禁用从路丢包检测 true:禁用 false:不禁用 |
常用测速地址:可用作T1段、T2段测速地址 | |
FRANKFURT_ADDRESS | 162.62.215.101:8888 |
SILICON_VALLEY_ADDRESS | 43.130.30.222:8888 |
SAO_PAULO_ADDRESS | 43.135.207.42:8888 |
TOKYO_ADDRESS | 43.128.254.208:8888 |
BANGKOK_ADDRESS | 43.128.200.25:8888 |
SINGAPORE_ADDRESS | 101.33.46.84:8888 |
HONG_KONG_ADDRESS | 43.159.234.5:8888 |
MpAdditionalOptions
属性 | 描述 |
packetLossEscape | 加速链路连续【packetLossCount】失联 |
maxRttEscape | 加速链路连续【maxRttCount】ping 值大于等于【rttThreshold】ms; |
rttExceptionEscape | 加速链路【detectWindowTime】平均 ping 值大于主链路【rttDiffThreshold】%,并且 acc 平均时延大于【accBenchmarkRtt】ms; |
stopAccRemind | 加速链路【detectWindowTime】内平均时延大于主链路【rttDiffRate】%,且抖动大于主链路【jitterRate】%,建议关闭加速 |
MpPathDetail
属性 | 描述 |
rxBytes | 下行数据 |
txBytes | 上行数据 |
lost | 丢包率 |
RTT | 数据时延 |
type | 网卡类型 case mobile = 0 case Wi-Fi = 1 |
InterfaceName | 网卡名称 |
TotalRxBytes | 下行总流量 |
TotalTxBytes | 上行总流量 |
peakRxBytes | 下行峰值流量 |
peakTxBytes | 上行峰值流量 |
NetworkConditions
属性 | 描述 |
MUST_NONE | 无限定条件 |
MUST_WIFI_ACTIVE | Wi-Fi 必须可用 |
MUST_SIM_CARD_READY | 必须插 SIM 卡 |
MUST_MOBILE_DATA_ENABLE | 蜂窝必须开启 |
方法 | 描述 |
combine | 组合多个条件 |
错误码定义
public enum AccErrorType: Int {/// vpn fd空指针异常case vpnInterfaceNullPoint = -1/// mpquic异常case mpQuicLibraryException = -2/// vpn连接建立异常case establishVpnException = -3/// **⚠️andriod code** 无效包名(白名单)异常@available(*, deprecated, message: "andriod code")case invalidPackageName = -4/// 系统异常case vpnDisconnectException = -5/// acc测速 丢包率异常case accContinuePackageLossException = -6/// acc加速 最大时延数异常case accMaxRttCountException = -7/// acc测速 对比Wi-Fi时延异常case accRttContrastException = -8/// acc测速 平均时延超出最大阈值case accAvgRttException = -9/// acc测速 平均丢包率异常case accAvgPackageLossException = -10/// 加速认证失败case accAuthenticationFailed = -11/// 认证连接超时case accAuthenticationTimeOut = -12/// 认证连接异常case accAuthenticationException = -13/// SLA一般负优化case slaNormalAccException = -16/// 加速参数非法case accIllegalParamter = -17/// **⚠️andriod code** 拉起vpn服务失败@available(*, deprecated, message: "andriod code")case setUpVpnServiceFailed = -18/// 拉起测速服务失败case setUpMeasureFailed = -19/// 没有有效接入点case noValidAccessPoint = -20/// 账号认证失败case accountAuthenticationError = -21/// 网卡状态不满足加速条件case notMeetAccConditions = -22/// 无效测速地址case invalidSpeedTestAddress = -23/// 无效自定义网卡 ⚠️ Android 错误码@available(*, deprecated, message: "andriod code")case invalidReflectObject = -24/// 无效加速插件case invalidAccProxyPlugin = -25/// 当前设备无活跃网卡case noConnectedNetworkCard = -26/// 节点udping不通case accessPointUdpingFailed = -28/// 不支持加速此设备case unsupportAccDevice = -29/// MpAccClient.shared.status 状态错误case statusError = -50/// 多通道加速已经拉起case mulitpathStarted = 100/// 多通道加速内部错误case mulitpathCoreFailed = 101/// 加速代理拉起失败case mulitpathTunDevFailed = 102/// 无效加速节点IPcase mulitpathCoreAccIpInvalid = 103/// 无效加速模式case mulitpathCoreAccModeInvalid = 104/// 加速token鉴权失败case mulitpathCoreAccAuthFailed = 105/// 加速链路通知被关闭case mulitpathCoreAccControllerClose = 106/// 通道握手建立超时case mulitpathCoreAccHandshakeTimeout = 107/// 加速重连超时case mulitpathCoreAccReconnectTimeout = 108/// socks5代理失败case mulitpathCoreSocks5Failed = 109/// 达到当前网关最大接入数case reachedMaximumNumberGratewayAccesses = 110}