我正在构建一个应用程序,它使用AsyncTask在执行网络操作(Google翻译)时显示进度条。 但是,问题在于我无法确定它是否正常工作,因为网络速度太快,只要启动它就会完成运行操作。 那么有没有一种方法来模拟一个缓慢的网络,以便我可以判断进度条是否会在等待操作完成时实际运行(可见)?创建Android模拟器时遇到了网络选项。但是,有很多缩写,我仍然无法理解什么表明网络连接速度很慢,而且我仍不确定是否应该设置较慢的网络连接。在Android模拟器上模拟慢速网络
在此先感谢!
我正在构建一个应用程序,它使用AsyncTask在执行网络操作(Google翻译)时显示进度条。 但是,问题在于我无法确定它是否正常工作,因为网络速度太快,只要启动它就会完成运行操作。 那么有没有一种方法来模拟一个缓慢的网络,以便我可以判断进度条是否会在等待操作完成时实际运行(可见)?创建Android模拟器时遇到了网络选项。但是,有很多缩写,我仍然无法理解什么表明网络连接速度很慢,而且我仍不确定是否应该设置较慢的网络连接。在Android模拟器上模拟慢速网络
在此先感谢!
该模拟器可以让你模拟各种网络条件。您可以近似使用不同网络协议的网络速度,也可以指定“完整”,它可以按计算机允许的速度快速传输数据。
指定网络协议始终比“完整”慢。您还可以指定语音和数据网络状态,例如漫游。默认值在AVD中设置。
选择网络类型:
GPRS(114Kbps)< EGDE(368Kbps)< 3G(3.1Mbps的)< HSDPA(14Mbps的)< HSPA +(168Mbps)< 4G/LTE(299。为6Mbps)
选择音色状态,数据状态,或两者:
欲了解更多信息,请参阅https://developer.android.com/studio/run/emulator.html#extended
谢谢!我之前实际上在这个页面上,但即使在搜索了网络类型后,我仍然不知道哪一个是最慢的。当我测试它时,它仍然看起来很快。 –
使用命令行上的telnet,您可以连接到仿真器并更改设备的网络速度。
telnet localhost <<port of device>>
network speed <<network speed, ex: edge, full>>
您可以从模拟器的窗口顶部获取设备的端口。
您可以使用android docs here中的任何速度。身份证建议边缘的低速
如果你在Windows上,你将不得不建立telnet,你可以在this SO post找到方向。
谢谢!所以我在模拟器中启动我的应用程序后运行这些命令?而对于网络速度,我应该给它什么参数才能让它变慢?谢谢! –
是的,只要你的模拟器正在运行(你不需要你的应用程序启动)就在命令行中运行这两个命令。为了让它变慢,我建议使用“边缘”作为速度。它看起来像速度的链接没有正确格式化,所以生病了修复 –
在OS X中,您可以使用Network Link Conditioner,非常有用。这里有一个链接如何使用它以及如何安装。它会影响所有使用网络的程序。
http://nshipster.com/network-link-conditioner/
您也可以将所有流量进行代理和使用限制。我用查尔斯(商业,30天免费试用) https://www.charlesproxy.com/
谢谢!它是否也适用于Android模拟器?或者它是好的,因为我在mac上运行我的Android模拟器? –
它模拟了在OSX中运行的所有内容的错误网络。代理服务器也是一样。 – Anessence
你用于模拟器的操作系统是什么? – Anessence
我正在使用Android –
OSX或Windows? – Anessence