SDK 提供一系列网络测量接口和策略回调接口,业务通过设置测量阈值,达到按需加速的目的,同时 SDK 也提供加速兜底策略。当加速出现了重大异常,例如加速后出现断网,时延过大,加速负优化或加速效果远不及预期,SDK 会主动关闭加速和测速,让业务流量回源,防止因加速异常影响业务正常使用。
注意:
当 SDK 触发逃生 onAccException 回调后,会直接销毁加速通道,若业务使用 socks5 代理发起的加速,业务需将相应的网络请求切回直连(不再使用代理)。
initMpAcc(): void {MpAccClient.setDataKey("xxx", "xxx")this.mpAccClient = MpAccClient.getInstance(context)}let measureConfig = new MeasureConfig()measureConfig.time = 8000measureConfig.RTT = 60measureConfig.Loss = 5measureConfig.quickTime = 2000measureConfig.quickRtt = 80measureConfig.interval = 1000measureConfig.mode = AccMode.REDUNDANT // 模式// 启动测速mpAccClient.registerMeasureCallback(innerMeasureCallback)mpAccClient.startMeasure(measureConfig)//关闭测速mpAccClient.unregisterMeasureCallback(innerMeasureCallback)mpAccClient.stopMeasure()//测速回调let innerMeasureCallback: MeasureCallback = {onStartMpAcc: (code: number): void => {//建议开启加速},onStopMpAcc: (code: number): void => {//建议关闭加速},onStartQos: (code: number): void => {//建议打开 Qos},onNoPolicy: (code: number): void => {//当前网络状态无策略可用},onAccException: (errorCode: number, msg: string): void => {//加速链路出现异常},onRttChanged: (type: number, rtt: number): void => {//旁路udping rtt时延回调},onAccStateChanged: (state: Number, code: Number): void => {//加速状态改变回调}}