我想测试我的应用程序的低网络连接的情况。除了站在电梯里,还有什么最好的方法呢?我试过用铝箔纸包我的手机,但没有用。

我需要在真正的设备上测试它,而不是在模拟器上。


当前回答

我很惊讶没人提到这一点。你可以通过蓝牙连接,并将它们分开十多米(或更少的障碍物)。你的信号很差。没有微波炉,没有电梯,不需要软件。

其他回答

我有个办法解决你的问题。您可以使用代理程序来修改或监视您的网络状态。例如,查尔斯。

你应该改变默认配置的查尔斯像下面的图片我张贴。

最后,你会发现网速已经被塑造成较低的速度。

我为这个问题纠结了半天,终于想出了这个解决方案:

在真正的设备上进行测试并没有太大意义,因为你必须经历很多事情才能让它正常工作。实现真正测试的唯一合理方法是让你的手机连接到低质量的蜂窝网络,比如EDGE,如果你的电话公司提供这种网络的话。你可以试着在手机应用程序中拨打*#*#4636#*#* 最初的Android模拟器对于测试来说太慢了,并且不能实现比上面的解决方案更多的功能。

最好的方法就是使用Genymotion。这是一个Android模拟器,性能比原来的avd要好得多,个人使用的版本是免费的。

在Genymotion中创建虚拟设备后,只需通过本教程为设备设置代理。

在您的主机上运行一个模拟恶劣网络条件的代理服务器,如Crapify或Toxiproxy(我只测试了前者),这样就可以了。

更新:

我刚刚意识到,你也可以在真实的设备上选择同样的策略。我觉得自己像个白痴,没有早点意识到这一点。只要在你的电脑上启动一个Crapify代理,将你的手机代理设置为你电脑的本地地址,瞧,你的手机上就有了蹩脚的互联网。

运行>运行配置,选择Android应用程序,然后进入目标选项卡。按照图中所示进行更改。

有一种在真实设备上测试低速的简单方法似乎被忽视了。它确实需要一台Mac电脑和以太网(或其他有线)网络连接。

在Mac上打开Wifi共享,把你的电脑变成Wifi热点,把你的设备连接到这个。使用Netlimiter/Charles Proxy或Network Link Conditioner(您可能已经安装了)来控制速度。

欲了解更多详细信息,并了解您应该在签出时测试什么样的速度:http://opensignal.com/blog/2016/02/05/go-slow-how-why-to-test-apps-on-poor-connections/

我知道这是个老问题,但是…

现在有些手机的设置是只使用2G。它非常适合在真实设备上模拟慢速互联网。