我想测试我的应用程序的低网络连接的情况。除了站在电梯里,还有什么最好的方法呢?我试过用铝箔纸包我的手机,但没有用。
我需要在真正的设备上测试它,而不是在模拟器上。
我想测试我的应用程序的低网络连接的情况。除了站在电梯里,还有什么最好的方法呢?我试过用铝箔纸包我的手机,但没有用。
我需要在真正的设备上测试它,而不是在模拟器上。
当前回答
我知道这是个老问题,但是…
现在有些手机的设置是只使用2G。它非常适合在真实设备上模拟慢速互联网。
其他回答
你可以使用模拟器。看看这个页面:Android模拟器。请注意下面两个论点:
-netdelay <delay> Set network latency emulation to . Default value is none. See the table in Network Delay Emulation for supported values. -netspeed <speed> Set network speed emulation to . Default value is full. See the table in Network Speed Emulation for supported values. Speeds for reference in increasing 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 ∞ ∞
我正在使用mitmproxy HTTPS代理。https://mitmproxy.org/
Mitmproxy是一个开源代理应用程序,允许拦截任何HTTP(S)客户端之间的HTTP和HTTPS连接。它允许实时监控、捕获和改变这些连接。更改请求,响应,报头,… 此外,您还可以拦截不同的请求。
例如response_delay.py:
from mitmproxy import http
from time import sleep
def response(flow: http.HTTPFlow) -> None:
sleep(5.0)
然后执行这个注释会延迟来自服务器的所有响应:
mitmproxy --cert \*.asdf.at=./cert.pem --scripts response_delay.py
在我的应用程序中,我使用证书钉住,所以你需要添加证书(私有+公共) 猫私人。关键的公众。密钥> cert.pem
你可以在这里找到一个简单的教程。
您可以在这里找到其他脚本示例。
Android工作室AVD更新:
开放式AVD管理器 创建/编辑AVD 点击高级设置 选择您首选的连接设置
没有微波炉和电梯:)
或者在一个实际的设备上,你可以去设置->移动网络->首选的网络类型,并选择可用的最慢的… 当然,这是非常有限的,但对于某些测试目的,这可能足够了。
几岁了,但是嘿,我会用Genymotion来配合我的万无一失的方法。
下载Charles免费试用版:http://www.charlesproxy.com/download/ 安装它 ClickProxy ->节流阀设置 设置HTTP节流速度 关闭窗口 单击“Proxy -> Throttling”,开启节流阀 打开Genymotion模拟器 打开wifi设置 长按开启的wifi连接 单击“修改网络” 单击“显示高级选项” 设置代理为手动 设置Proxy主机名为10.0.3.2 端口设置为“8888” 点击保存
现在你的网络将被阻塞!