API | 描述 |
getInstance | 获取 MpAccClient 单例 |
setDataKey | 设置设备密钥 |
setSign | 设置应用签名鉴权 |
setRegionalAccess | 设置是否通过地域分配接入点 |
setConnectTimeout | 设置连接超时时间 |
setLogInfoCallback | 设置 log 信息回调接口 |
setLogLevel | 设置日志等级 |
prepare | 获取 VPN 鉴权 Intent |
updateTCPDirect | 动态更新 TCP 状态 |
updateUDPDirect | 动态更新 UDP 状态 |
startAcc | 发起加速 |
stopAcc | 停止加速 |
startMeasure | 开启网络测量 |
stopMeasure | 停止网络测量 |
registerAccCallback | 发起监听加速状态 |
unregisterAccCallback | 取消监听加速状态 |
registerMeasureCallback | 发起网络测量回调监听 |
unregisterMeasureCallback | 取消网络测量回调监听 |
requestNetwork | 请求网络 |
releaseNetwork | 释放网络 |
register | 预注册 |
getSdkVersion | 获取 SDK 版本号 |
public static MpAccClient getInstance(Context context)
参数 | 类型 | 描述 |
context | Context | ApplicationContext |
public static void setDataKey(String uuid, String dataKey)
参数 | 类型 | 描述 |
uuid | String | 设备唯一标识(可复用云 API 返回的 deviceId) |
dataKey | String | 设备密钥(每个 dataKey 对应一个设备,不能重复使用) |
public static void setSign(String appId, String sign)
参数 | 类型 | 描述 |
appId | String | 应用 appId |
sign | String | 签名字符串 |
public static void setRegionalAccess(boolean isRegionalAccess)
参数 | 类型 | 描述 |
isRegionalAccess | boolean | 是否通过地域分配接入点 true:是 false:否 默认:true |
public static void setConnectTimeout(long timeout)
参数 | 类型 | 描述 |
timeout | long | 超时时间(秒) |
public static void setLogInfoCallback(LogInfoCallback logInfoCallback)
参数 | 类型 | 描述 |
logInfoCallback | LogInfoCallback | log 日志回调实例 |
public static void setLogLevel(int level, boolean enablePrint)
参数 | 类型 | 描述 |
level | int | 日志等级(0-6) 0:PANIC 1:FATAL 2:ERROR 3:WARN 4:Info 5:DEBUG 6:TRACE |
enablePrint | boolean | 是否打印日志 |
public static Intent prepare(Activity activity)
参数 | 类型 | 描述 |
activity | Activity | 当前 activity |
public void startAcc(AccConfig accConfig)
参数 | 类型 | 描述 |
accConfig | AccConfig | 加速配置对象 |
public boolean stopAcc()
public void startMeasure(MeasureConfig measureConfig)
参数 | 类型 | 描述 |
measureConfig | MeasureConfig | 网络测量配置对象 |
public void stopMeasure()
public void registerAccCallback(AccCallback accCallback)
参数 | 类型 | 描述 |
accCallback | AccCallback | 加速状态回调对象 |
public void unregisterAccCallback(AccCallback accCallback)
参数 | 类型 | 描述 |
accCallback | AccCallback | 加速状态回调对象 |
public void registerMeasureCallback(MeasureCallback measureCallback)
参数 | 类型 | 描述 |
measureCallback | MeasureCallback | 网络测量回调对象 |
public void unregisterMeasureCallback(MeasureCallback measureCallback)
参数 | 类型 | 描述 |
measureCallback | MeasureCallback | 网络测量回调对象 |
public void requestNetwork(int type)
参数 | 类型 | 描述 |
type | int | 网络类型 0:蜂窝 1:Wi-Fi |
public void releaseNetwork(int type)
参数 | 类型 | 描述 |
type | int | 网络类型 0:蜂窝 1:Wi-Fi |
public void register(boolean isActivateCellular, int mode,RegisterCallback registerCallback)
参数 | 类型 | 描述 |
isActivateCellular | boolean | 是否激活蜂窝,提前激活蜂窝,在 Wi-Fi 弱网的环境下,能减少加速耗时和建连成功率,但同时也会增加终端设备功耗 |
mode | int | 加速模式 |
registerCallback | RegisterCallback | 预注册回调对象 |
public String getSdkVersion()
void onLogInfoUpdate(String tag, String msg)
API | 描述 |
tag | 标记 |
msg | 详细信息 |
API | 描述 |
onRegisterSuccess | 注册成功 |
onRegisterFail | 注册失败 |
void onRegisterSuccess()
void onRegisterFail(int code)
参数 | 类型 | 描述 |
code | int | 错误码,参考错误码模块 |
mode | int | 模式 0:全包截取;1:特定 IP 截取(暂不支持) |
API | 描述 |
setBlackList | 设置黑名单应用 |
setWhiteList | 设置白名单应用 |
setAccMode | 设置加速模式 |
addAccNode | 设置加速节点 |
setPingInterval | 设置回调间隔时间 |
setRoute | 设置路由表 |
setAccLinks | 设置加速链路 |
setPriority | 设置链路优先级 |
setTCPDirect | 设置 tcp 直连 |
setUDPDirect | 设置 UDP 直连 |
setAllowBypass | 设置绑定网卡直连 |
setVpnKeepAlive | 设置加速是否保活 |
addNetworkPlugin | 插入自定义网卡 |
setInt | 设置 int 类型配置参数 |
setString | 设置 String 类型配置参数 |
setBoolean | 设置 boolean 类型配置参数 |
setArrayList | 设置 ArrayList 配置参数 |
setEnableSocks | 设置是否开启 socks 代理 |
setSocksPort | 设置 socks 代理端口号 |
setSocksUsername | 设置 socks 用户名 |
setSocksPassword | 设置 socks 密码 |
setEncryption | 设置是否加密 |
setCongestionMode | 设置拥塞算法 |
setNetworkConditions | 设置网络加速满足条件 |
setStartForeground | 是否拉起前台服务 |
public AccConfig setBlackList(ArrayList<String> apps)
参数 | 类型 | 描述 |
apps | ArrayList<String> | 不需要加速的应用包名列表 |
ArrayList<String> blackList = new ArrayList<>();blackList.add("com.example.app1");accConfig.setBlackList(blackList);
public AccConfig setWhiteList(ArrayList<String> apps, int mode)
参数 | 类型 | 描述 |
apps | ArrayList<String> | 需要加速的应用包名列表 |
mode | int | 模式 0:全包截取 1:特定IP截取(暂不支持) |
public AccConfig setAccMode(int mode)
参数 | 类型 | 描述 |
mode | int | 加速模式 AccConfig.ACC_MOD_BONDING 聚合(适用于视频推流场景) AccConfig.ACC_MOD_REDUNDANT 双发(适用于游戏场景) AccConfig.ACC_MOD_FASTSWITCHING 快切(适用于会议、云游戏场景) |
public AccConfig addAccNode(String ip, int port)
参数 | 类型 | 描述 |
ip | String | 加速节点 IP 地址 |
port | int | 加速节点端口号 |
public AccConfig setPingInterval(int interval)
参数 | 类型 | 描述 |
interval | int | 间隔时间,单位:秒 |
public AccConfig setRoute(String address, int prefixLength)
参数 | 类型 | 描述 |
address | String | ip地址 |
prefixLength | int | 子网掩码网络位长度 |
public AccConfig setAccLinks(int links)
参数 | 类型 | 描述 |
links | int | 加速链路信息 蜂窝链路:AccConfig.MOBILE_LINK Wi-Fi 链路:AccConfig.WIFI_LINK eth链路:AccConfig.ETH_LINK 蜂窝+Wi-Fi:SDK 默认使用 AccConfig.WIFI_LINK|AccConfig.MOBILE_LINK |
public AccConfig setPriority(HashMap<Integer, Integer> priority
参数 | 类型 | 描述 |
priority | HashMap | 优先级map key:链路种类 0:mobile 1:Wi-Fi 9: eth value:优先级为数字0-255, 数字越低优先级越高,默认64。当优先级数字>=128时,表示该链路为备份链路。 priority.put(0,64) 设置 type=0(mobile)的链路优先级是64 |
public AccConfig setUDPDirect(boolean udpDirect)
参数 | 类型 | 描述 |
udpDirect | boolean | udp 直连 true:直连 false:不直连 设置此接口直连,加速后所有的 udp 流量将会直接从默认路由发送至业务服务器 |
public AccConfig setTCPDirect(boolean tcpDirect)
参数 | 类型 | 描述 |
tcpDirect | boolean | tcp 直连 true:直连 false:不直连 设置此接口直连,加速后所有的 tcp 流量将会直接从默认路由发送至业务服务器 |
public AccConfig setAllowBypass(boolean allowBypass)
参数 | 类型 | 描述 |
allowBypass | boolean | tcp 直连 true:直连 false:不直连 ,默认false 在 VPN 模式下,设置此接口直连,指定网卡的流量将会绕过 VPN 拦截 |
public void addNetworkPlugin(String pluginClassName)
参数 | 类型 | 描述 |
pluginClassName | String | 网卡插件完整类名 (可参考常见问题第四问) |
public AccConfig setInt(String key, String value)
参数 | 类型 | 描述 |
key | String | 配置名称,key值: AccConfig.KEY_MAX_RTT_DISABLE_AGGREGATION 聚合模式下,超过此值的链路将不参与聚合。一般不建议用户修改 AccConfig.KEY_MAX_DELAY_UNTIL_FAILED 实时模式,可用链路判定阈值。超过此值的链路被认为是故障链路,将不再使用直到恢复。一般不建议用户修改 AccConfig.KEY_MIN_SWITCH_RTT 实时模式,切换敏感度。一般不建议用户修改 AccConfig.KEY_MAX_RTT_THRESHOLD 聚合模式和实时模式,链路故障检测开启阈值。超过此值的链路会进行故障检测。一般不建议用户修改 AccConfig.KEY_MAX_RETRY_TIMES 设置 Quic 建联重试次数,默认3次 |
value | String | 配置值 |
public AccConfig setString(String key, String value)
参数 | 类型 | 描述 |
key | String | 配置名称,key值: AccConfig.KEY_SERVER_DOMAIN 配置域名 AccConfig.KEY_SECRET_KEY_ID 密钥ID AccConfig.KEY_CIPHER_TEXT 签名字符串 AccConfig.KEY_SIGNATURE 数字签名 AccConfig.KEY_T2_OUT 指定T2段加速下车点 目前支持的下车点:frankfurt siliconvalley saopaulo tokyo bangkok singapore hongkong 如指定中国香港下车点: accConfig.setBoolean(AccConfig.KEY_ENABLE_T2_ACC, true); accConfig.setString(AccConfig.KEY_T2_OUT, "hongkong"); |
value | String | 配置值 |
public AccConfig setBoolean(String key, boolean value)
参数 | 类型 | 描述 |
key | String | 配置名称 key 值: AccConfig.KEY_ENABLE_T2_ACC 开启T2段加速 AccConfig.KEY_ALLOW_PRIVATE_NETWORK 内网互通 |
value | String | 配置值 |
public AccConfig setArrayList(String key, ArrayList<String> value)
参数 | 类型 | 描述 |
key | String | 配置名称 key 值: AccConfig.KEY_APP_ID_LIST AppId list,需传入对应应用的 appId,SDK 将会对应用的白名单域名进行 T2段加速 |
value | ArrayList | 配置值 |
public AccConfig setEnableSocks(boolean enableSocks)
参数 | 类型 | 描述 |
enableSocks | boolean | 是否启用 socks 代理: true:启用 false:不启用 默认:false |
public AccConfig setSocksPort(int socksPort)
参数 | 类型 | 描述 |
socksPort | int | 设置 socks 代理端口号 |
public AccConfig setSocksUsername(String socksUsername)
参数 | 类型 | 描述 |
socksUsername | String | socks 用户名 |
public AccConfig setSocksPassword(String socksPassword)
参数 | 类型 | 描述 |
socksPassword | String | socks 密码 |
public AccConfig setEncryption(boolean encryption)
参数 | 类型 | 描述 |
encryption | boolean | 报文是否加密: true:加密 false:不加密 |
public AccConfig setCongestionMode(int congestionMode)
参数 | 类型 | 描述 |
congestionMode | int | 拥塞算法参数: 0: BBR 1: CUBIC 2: BBR-NORMAL 默认值:0 |
public AccConfig setNetworkConditions(int conditions)
参数 | 类型 | 描述 |
conditions | int | AccConfig.MUST_WIFI_ACTIVE 当前终端必须满足 Wi-Fi 激活 AccConfig.MUST_SIM_CARD_READY 当前终端必须满足插入SIM卡 AccConfig.MUST_MOBILE_DATA_ENABLE 当前终端需满足移动网络数据开关打开 如果需要添加多个条件可以设置如下: AccConfig.MUST_WIFI_ACTIVE|AccConfig.MUST_SIM_CARD_READY |
public AccConfig setStartForeground(boolean startForeground)
参数 | 类型 | 描述 |
startForeground | boolean | false:不拉起 true:拉起 默认:true |
API | 描述 |
setRTT | 设置时延阈值 |
setLoss | 设置丢包率阈值 |
setJitter | 设置抖动阈值 |
setAddr | 设置测速地址 |
setMode | 设置模式 |
setTime | 设置滑动窗口测量时间 |
setQuickTime | 设置快启动窗口时间 |
setQuickRtt | 设置快启动时延阈值 |
setInterval | 设置测量回调频率 |
setPingTimeout | 设置 ping 包超时时间 |
setT2AccProbeAddr | 设置 T2 段测速 IP |
setDisableSlaveLossDetect | 设置禁用从路丢包检测 |
setAdditionalOptions | 设置逃生回源自定义选项 |
setStartForeground | 设置拉起前台服务 |
public MeasureConfig setRTT(int RTT)
参数 | 类型 | 描述 |
RTT | int | 延迟阈值(毫秒) |
public MeasureConfig setLoss(int loss)
参数 | 类型 | 描述 |
loss | int | 丢包率百分比阈值(0-100) |
public MeasureConfig setJitter(int jitter)
参数 | 类型 | 描述 |
jitter | int | 网络抖动阈值(毫秒) |
public MeasureConfig setJitter(int jitter)
参数 | 类型 | 描述 |
mode | int | 模式如下: 聚合:AccConfig.ACC_MOD_BONDING 双发:AccConfig.ACC_MOD_REDUNDANT 快切:AccConfig.ACC_MOD_FASTSWITCHING |
public MeasureConfig setTime(int time)
参数 | 类型 | 描述 |
time | int | 测量时长,单位:ms |
public MeasureConfig setQuickRtt(int quickRtt)
参数 | 类型 | 描述 |
quickRtt | int | 快启动时延阈值,单位:ms |
public MeasureConfig setQuickTime(int quickTime)
参数 | 类型 | 描述 |
quickTime | int | 快启动窗口时间,单位:ms |
public MeasureConfig setInterval(int interval)
参数 | 类型 | 描述 |
interval | int | 回调频率,单位:ms |
public MeasureConfig setPingTimeout(int pingTimeout)
参数 | 类型 | 描述 |
pingTimeout | int | 超时时间,单位:ms |
public MeasureConfig setT2AccProbeAddr(String addr)
参数 | 类型 | 描述 |
addr | String | T2 测速IP。 欧服: MeasureConfig.FRANKFURT_ADDRESS 美服: MeasureConfig.SILICON_VALLEY_ADDRESS 巴西服: MeasureConfig.SAO_PAULO_ADDRESS 日服: MeasureConfig.TOKYO_ADDRESS 泰服: MeasureConfig.BANGKOK_ADDRESS 新加坡服: MeasureConfig.SINGAPORE_ADDRESS 中国香港: MeasureConfig.HONG_KONG_ADDRESS |
public MeasureConfig setDisableSlaveLossDetect(boolean disableSlaveLossDetect)
参数 | 类型 | 描述 |
disableSlaveLossDetect | boolean | true:禁用 false:不禁用 |
public MeasureConfig setAdditionalOptions(AdditionalOptions additionalOptions)
参数 | 类型 | 描述 |
additionalOptions | AdditionalOptions | 逃生回源自定义对象 |
public MeasureConfig setStartForeground(boolean startForeground)
参数 | 类型 | 描述 |
startForeground | boolean | false:不拉起 true:拉起 默认:true |
API | 描述 |
onAccDataUpdate | 网络速率回调 |
onSummaryInfoUpdate | 加速汇总信息更新 |
onNetworkStateChanged | 网卡链路状态变化回调 |
onAccSuccess | 加速成功回调 |
onAccFail | 加速失败回调 |
void onAccDataUpdate(long tRx, long tTx, ArrayList<PathDetail> pathDetails)
参数 | 类型 | 描述 |
tRx | long | 总接收数据量(字节) |
tTx | long | 总发送数据量(字节) |
pathDetails | ArrayList | 各传输路径的详细数据 |
void onSummaryInfoUpdate(String summaryInfo)
参数 | 类型 | 描述 |
summaryInfo | String | 加速汇总信息,JSON 格式的摘要信息,包含网络质量、加速效果等关键指标 |
void onNetworkStateChanged(int type, boolean available, String ip)
参数 | 类型 | 描述 |
type | int | 网卡类型 0:mobile 1:Wi-Fi |
available | boolean | 是否可用 |
ip | String | 网卡 ip(IPv4),若不可用则为空 |
void onAccSuccess(ArrayList<String> packageNames, String ip, int port)
参数 | 类型 | 描述 |
packageNames | ArrayList | 成功加速的应用包名列表 |
ip | String | 加速服务器 IP |
port | int | 加速服务器端口 |
void onAccFail(ArrayList<String> packageNames, int errorCode)
参数 | 类型 | 描述 |
packageNames | ArrayList | 加速失败的应用包名列表 |
errorCode | int | 错误码(详见错误码表) |
API | 描述 |
onStartMpAcc | 建议开启加速 |
onStopMpAcc | 建议关闭加速 |
onStartQos | 建议打开 Qos |
onNoPolicy | 当前网络状态无策略可用 |
onAccException | 加速链路出现异常 |
onRttChanged | 旁路 udping rtt 时延回调 |
onAccStateChanged | 加速状态改变回调 |
onDetectServerUpdate | 测速 ip 改变回调 |
void onStartMpAcc(int code)
参数 | 类型 | 描述 |
code | int | 触发码 1:时延异常触发 2:丢包率异常触发 3:抖动异常触发 |
void onStopMpAcc(int code)
参数 | 类型 | 描述 |
code | int | 触发码 1:单网卡触发 2:无优化触发 3:无网络触发 |
void onStartQos(int code)
参数 | 类型 | 描述 |
code | int | 触发码 1:时延异常触发 2:丢包率异常触发 3:抖动异常触发 |
void onNoPolicy(int code)
参数 | 类型 | 描述 |
code | int | 触发码 2:单 Wi-Fi 3:无网络可用 4:内部错误 5:测速服务异常断开 -12:认证超时 -13:认证异常 -19:测速服务失败 -23:账户认证失败 |
void onAccException(int errorCode)
参数 | 类型 | 描述 |
errorCode | int | 错误码 -6 acc测速 持续丢包异常 -7 acc测速 最大时延异常 -8 acc测速 对比默认路由时延异常 -9 acc测速 平均时延超出最大阈值 |
void onRttChanged(int type, int rtt)
参数 | 类型 | 描述 |
type | int | 种类 终端到加速网关的测速。 0:mobile 1:Wi-Fi 2:acc 终端到T2下车点的测速。 1001:default 1002:acc |
rtt | int | 时延(ms) 丢包默认值为60000 |
void onAccStateChanged(int state, int code)
参数 | 类型 | 描述 |
state | int | 0:关闭 1:打开 |
code | int | 0:正常开启 1:正常关闭 2:异常关闭 3:回调 onRevoke 关闭 |
void onDetectServerUpdate(int type, String ip, int port)
参数 | 类型 | 描述 |
type | int | 种类(0:mobile 1:Wi-Fi 2:acc) |
ip | String | 测速 ip |
port | int | 测速端口 |
错误码 | 描述 |
-1 | VPN fd 空指针异常 |
-2 | MPQUIC 异常 |
-3 | 加速连接建立异常 |
-4 | 无效包名或路由地址 |
-5 | 加速服务异常断开 |
-6 | acc 测速 丢包率异常 |
-7 | acc 加速 最大时延数异常 |
-8 | acc 测速 对比 Wi-Fi 时延异常 |
-9 | acc 测速 平均时延超出最大阈值 |
-11 | 加速认证失败 |
-12 | 认证连接超时 |
-13 | 认证连接异常 |
-17 | 加速参数非法 |
-18 | 拉起加速服务失败 |
-19 | 拉起测速服务失败 |
-21 | 账号认证失败 |
-22 | 网卡状态不满足加速条件 |
-23 | 无效测速地址 |
-24 | 无效自定义网卡插件 |
-25 | 无效加速插件 |
-26 | 当前设备无活跃网卡 |
-28 | 终端 udping 失败 |
-29 | 不支持加速此设备 |
-30 | 测速参数非法 |
-31 | 加速已经被取消 |
-32 | 鸿蒙系统蜂窝激活限制异常,建议重启机器恢复 |
100 | 多通道加速已经拉起 |
101 | 多通道加速内部错误 |
102 | 加速代理开启失败 |
103 | 无效加速节点 IP |
104 | 无效加速模式 |
105 | 加速 token 鉴权失败 |
106 | 加速链路通知被关闭(是否多个设备复用了 dataKey) |
107 | 通道握手建立超时(公有云模式下是否有传递 dataKey) |
108 | 加速重连超时 |
109 | SOCKS5 代理失败 |
110 | 达到当前网关最大接入数 |
文档反馈