我需要模拟慢速或无网络环境来测试Dart/Flutter的HttpClient和Socket。然而,我找不到任何关于网络方面的指南。
我的初步想法如下:我们可以创建一个 class SlowSocket implements Socket
,并使用委托/装饰器设计模式。例如,SlowSocket.add
方法将被实现为 Future.delayed(...).then(() => realSocket.add())
。不知道这种方法可行吗?或者有更简单/更好的方式吗?
感谢任何建议!
我需要模拟慢速或无网络环境来测试Dart/Flutter的HttpClient和Socket。然而,我找不到任何关于网络方面的指南。
我的初步想法如下:我们可以创建一个 class SlowSocket implements Socket
,并使用委托/装饰器设计模式。例如,SlowSocket.add
方法将被实现为 Future.delayed(...).then(() => realSocket.add())
。不知道这种方法可行吗?或者有更简单/更好的方式吗?
感谢任何建议!
如果您正在使用Android Studio
,我可以帮助您。
参考速度(以增加kbps为单位):
UP DOWN
-------- ----------
gsm GSM/CSD 14.4 14.4
hscsd HSCSD 14.4 57.6
gprs GPRS 28.8 57.6
umts UMTS/3G 384.0 384.0
edge EDGE/EGPRS 473.6 473.6
hsdpa HSDPA 5760.0 13,980.0
lte LTE 58,000.0 173,000.0
evdo EVDO 75,000.0 280,000.0
full No limit ∞ ∞