我正在调试从Internet获取主数据的应用程序中看到的一些不一致的行为。我在模拟器中没有看到问题,只是在设备上,所以我想在模拟器中重现网络和连接环境。
在模拟器中是否有禁用网络的方法?
(我正在远程连接到Mac上编写代码,目前没有其他选择,所以不能禁用操作系统网络)。
我正在调试从Internet获取主数据的应用程序中看到的一些不一致的行为。我在模拟器中没有看到问题,只是在设备上,所以我想在模拟器中重现网络和连接环境。
在模拟器中是否有禁用网络的方法?
(我正在远程连接到Mac上编写代码,目前没有其他选择,所以不能禁用操作系统网络)。
当前回答
您可以禁用主机的网络代替!
其他回答
iOS禁用网络
我建议你使用Mac上的Charles Proxy应用。
它允许您使用仅为调整网络连接而创建的带宽节流功能。
启动/停止节流⌘命令+ T 节流设置…⌘命令+ T + shift
*如果您通过添加带宽为0和0的预设来创建自己的预设用于下载和上传,您可以模拟没有互联网连接。此外,只对某些特定的主机启用它是非常有用的。
作为一种替代方法,你可以禁用Mac上的连接,因为所有来自模拟器的流量都要经过你的计算机。
由于Xcode没有提供这样的功能,你肯定会去找一些第三方应用程序/工具。 关闭Mac网络也将有助于关闭iOS模拟器网络。
你可以在系统设置中关闭你的Mac网络连接…→网络并关闭所需的网络源。
关闭你的Mac以太网Internet源:
关闭你的Mac Wi-Fi网络源(如果你的Mac有Wi-Fi网络连接):
如果你需要破坏你的网络连接是不同的方式,看看这些utils:
ipfw或pfctl (FreeBSD/OSX) -低级包过滤。拒绝从本地主机访问端口的示例 要关闭网络,可以在终端执行:
pfctl -e
(echo "block all"; pfctl -sr) | pfctl -f -
停止过滤:
pfctl -d
曾经有通过共享无线网络模拟3G网络的Throttle (Mac)。
自Xcode 4(?)以来,在/Applications/Utilities中有一个名为Network Link Conditioner的首选项窗格。您可以使用现有的配置文件之一,也可以创建自己的自定义配置文件,使用0 kbit/s的up/downlink和100%的drop。
你可以使用第三方应用程序(如Charles)限制互联网连接。
在Mac上点击Command + Shift + T设置节流。