我正在调试从Internet获取主数据的应用程序中看到的一些不一致的行为。我在模拟器中没有看到问题,只是在设备上,所以我想在模拟器中重现网络和连接环境。

在模拟器中是否有禁用网络的方法?

(我正在远程连接到Mac上编写代码,目前没有其他选择,所以不能禁用操作系统网络)。


当前回答

您可以使用ohhttpstub和存根网络请求特定的url失败。

其他回答

您可以禁用主机的网络代替!

只要在Mac OS x上关掉你的Wi-Fi就行了。

你可以在你的Mac上使用网络链接调节器。你可以从苹果开发者网站下载它。它应该可以在旧版本的Xcode和iOS中使用。有了这个网络调节器,你可以改变网络的强度,从Wi-Fi到无网络。

此外,当您安装网络调节器时,它会安装在系统首选项中。

恐怕不行——模拟器共享操作系统正在使用的任何网络连接。不久前,我提交了一份关于模拟网络条件的雷达错误报告;你也可以考虑这么做。

自Xcode 4(?)以来,在/Applications/Utilities中有一个名为Network Link Conditioner的首选项窗格。您可以使用现有的配置文件之一,也可以创建自己的自定义配置文件,使用0 kbit/s的up/downlink和100%的drop。