qnet 中文文档 下载 App

参数不生效的排查:全量更新与选错对象的两种真相

弱网生效了,但表现和参数对不上——这类问题比「完全没效果」更隐蔽。它基本只有两个真相:参数被全量更新语义冲掉了,或者你观察的对象根本不在生效范围内。

真相一:全量更新冲掉了已有参数

界面里改模板不受影响;但 adb 广播更新是全量语义:更新命令里没写的参数一律回到默认值(见官方注意事项与动态更新弱网参数)。

典型事故链:先启动了「延迟 300ms」,中途广播一条「丢包 20%」,预期 300ms 延迟 + 20% 丢包,实际只剩 20% 丢包——延迟被这条广播清零了。

规避写法:每次更新都把「当前应生效的全部参数」显式写全,或干脆每档用完整参数重启会话。

真相二:观察对象与生效对象不符

验证参数真的生效的三种手段

  1. 读数比对:信息悬浮窗显示当前模板与实时延迟,与设定值对照(Android),见信息悬浮窗读数;
  2. 逐包核对:报告 csv 的 delay_time/is_lose 列直接记录每个包被注入的延迟与是否被丢,是最硬的证据,字段解释见测试报告:csv 与 html 两份输出;
  3. 极限档试探:临时切 100% 丢包,能断即证明损伤路径通畅,问题出在参数档位而非通道。

模板本身的两个易错值

排查心法:先确认「通道通」(见弱网不生效的排查思路),再确认「参数在」,最后才怀疑工具。