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

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


当前回答

正如@VicVu Charles(或任何其他代理工具)所建议的那样,是一种更简单的方法。但我想补充的是,你也可以在你的设备上做到这一点,而不仅仅是genymotion或其他模拟器。过程是一样的:

修改您的设备/模拟器的wifi设置以使用手动代理。然后设置代理主机名和端口 A.将主机名设置为您系统的IP(使用ifconfig/ifconfig获取您pc/mac的IP) B.设置genymotion端口号(查看charles中的proxy Settings)

PS:你的设备/模拟器必须使用相同的wifi,因为你正在使用的ip很可能是私有ip。

其他回答

在Android Studio中打开终端,进入../../Android/sdk/tools。'模拟器'可执行文件应该在这里可用。 运行。/emulator -netdelay "delay_in_millis" -avd "emulator_device_name" 例如:./emulator -netdelay 60000 -avd Nexus_5_API_21 现在构建应用程序并将其安装在模拟器中。 在应用程序中运行您的场景。

确保你有你的代码变化在应用程序设置超时你的请求和处理。

我发现netlimiter4是将数据节流到模拟器的最佳解决方案。 它通过体面的gui提供粒度控制,并为每个进程的数据吞吐量提供图形化反馈。目前处于免费测试版。 截图

http://www.netlimiter.com/products/nl4

在游戏商店中有一些应用程序可以节流到实际设备上,但它们需要root(我不能提供任何关于它们工作得如何的建议,如果在所有- YMMV)。

在游戏商店搜索bradybound,我不能发布超过一个链接。

几岁了,但是嘿,我会用Genymotion来配合我的万无一失的方法。

下载Charles免费试用版:http://www.charlesproxy.com/download/ 安装它 ClickProxy ->节流阀设置 设置HTTP节流速度 关闭窗口 单击“Proxy -> Throttling”,开启节流阀 打开Genymotion模拟器 打开wifi设置 长按开启的wifi连接 单击“修改网络” 单击“显示高级选项” 设置代理为手动 设置Proxy主机名为10.0.3.2 端口设置为“8888” 点击保存

现在你的网络将被阻塞!

我需要在AndroidTV本机设备上限制低网络,根据我所读到的,最合适的解决方案是直接在我的路由器上限制互联网访问。 进入路由器设置(本地是smth,如192.168.0.1)->设置DHCP服务器(如果没有运行)->选择设备的IP地址并设置限制;

Facebook建立了一个叫做增强交通控制的东西。GitHub页面上的简要总结:

Augmented Traffic Control (ATC) is a tool to simulate network conditions. It allows controlling the connection that a device has to the internet. Developers can use ATC to test their application across varying network conditions, easily emulating high speed, mobile, and even severely impaired networks. Aspects of the connection that can be controlled include: bandwidth latency packet loss corrupted packets packets ordering In order to be able to shape the network traffic, ATC must be running on a device that routes the traffic and sees the real IP address of the device, like your network gateway for instance. This also allows any devices that route through ATC to be able to shape their traffic. Traffic can be shaped/unshaped using a web interface allowing any devices with a web browser to use ATC without the need for a client application.

你可以在GitHub上找到它:https://github.com/facebook/augmented-traffic-control

他们还为此写了一篇博客:https://code.facebook.com/posts/1561127100804165/augmented-traffic-control-a-tool-to-simulate-network-conditions/