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

有没有办法在模拟器中禁用网络?

(我正在远程连接到Mac代码,现在没有其他选择,因此禁用OS网络不是一种选择)。


#1楼

是。 在Xcode中,您可以转到Xcode菜单项 - > Open Developer Tools - > More Developer Tools并下载“ Xcode的附加工具 ”,它将具有网络链接调节器。

使用此工具,您可以模拟不同的网络方案(例如100%丢失,3G,高延迟DNS等),您也可以创建自己的自定义方案。


#2楼

使用简单的法拉第笼来阻止或限制外部RF信号电平。

你可以用铝箔制作自己的。 如果您要阻止,则开口应小于数据服务的波长 。

800Mhz具有37cm(14“)波长,1900Mhz具有16cm(6”)波长。

这对于实际设备而言比使用模拟器更好,因为当在法拉第笼内时Mac很难工作;-)


#3楼

你可以禁用主机的网络!


#4楼

您可以使用第三方应用程序限制互联网连接

查尔斯: http : //www.charlesproxy.com/

在Mac上按命令+ shift + T设置限制。


#5楼

您可以使用OHHTTPStubs并将对特定URL的网络请求存根失败。


#6楼

如果你有至少2个wifi网络连接是一个非常简单的方法是使用iOS模拟器中的错误:

  1. 如果打开,则从模拟器(cmd-q)退出
  2. 将你的Mac连接到一个wifi(它可能没有连接到互联网,没关系)
  3. 启动模拟器(菜单:xCode-> Open Developer Tool-> iOs Simulator)并在加载时等待
  4. 切换wifi网络到另一个
  5. 利润

问题是模拟器试图使用尚未连接的网络(IP?)。

直到你重新启动模拟器 - 它将没有互联网(即使你连接的第一个wifi网络有互联网连接),所以你可以运行(cmd-R)和停止(cmd-。)项目使用模拟器没有连接,但你的Mac将被连接。

然后,如果你需要运行模拟器连接 - 只需退出并启动它。


#7楼

您可以使用Little Snitch切断任何单个进程的网络流量,包括在iOS模拟器上运行的进程。 这样您就可以保持互联网连接并断开正在运行的应用程序。


#8楼

您可以在Mac上使用网络链接调节器。 您可以从Apple开发者网站下载它。 它应该在我们获得旧版Xcode和iOS的地方可用。 使用这种网络调节器,您可以将网络的强度从wifi更改为无网络。

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


#9楼

由于Xcode不提供此类功能,因此您肯定会使用某些第三方应用程序/工具。 关闭MAC网络也有助于关闭iOS模拟器网络。

您可以从“ System Preferences... ”>“ Network ”关闭MAC互联网并关闭所需的网络源。

要关闭MAC以太网上网源:

要关闭MAC WiFi互联网源(如果您的MAC在Wifi Internet上):


#10楼

一个可能是疯狂的想法或补丁:

只需切换网络可达性标志即可

这是我通过触发“模拟器内存​​警告”及其完全安全来切换标志运行时的代码,只需确保代码只能处于DEBUG模式

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
{
#ifdef DEBUGisInternetAvailable = !isInternetAvailable;
#endif
}

#11楼

下载其他工具包 (网络链接调节器)

描述

Sierra的例子:


#12楼

使用Xcode 8.3和iOS 10.3:

XCUIDevice.shared().siriService.activate(voiceRecognitionText: "Turn off wifi")
XCUIDevice.shared().press(XCUIDeviceButton.home)

请确保在测试套件文件的顶部包含@available(iOS 10.3, *)

如果您愿意,也可以选择“打开飞行模式”。

一旦Siri关闭wifi或打开飞行模式,您将需要忽略Siri对话,该对话说Siri需要互联网。 这可以通过按下主页按钮来完成,该按钮会取消对话并返回到您的应用程序。


#13楼

我不敢 - 模拟器共享操作系统正在使用的任何网络连接。 我提交了关于模拟网络状况的Radar错误报告 ; 你可能会考虑做同样的事情。


#14楼

我知道在iOS模拟器上禁用网络的唯一方法是使用Little Snitch或Hands Off等工具。 通过它们,您可以拒绝/阻止任何外出和进入的网络连接。 您可以对其进行设置,使其仅阻止来自模拟器应用程序的连接。 像防火墙一样工作。


#15楼

两种方法可以禁用 IOS模拟器互联网:

  • 拔下网络连接
  • 关闭Wi-Fi

这是最简单的方法


#16楼

如果您的应用程序连接到特定域,您只需将其添加到/etc/hosts文件并将其路由到本地网络中的不存在的IP ...对于应用程序,它将与存在的情况相同没有互联网连接或服务器无法访问。

sudo nano /etc/hosts

添加以下行:

192.168.1.123   example.com

如果您没有在本地计算机上运行Web服务器,请使用127.0.0.1


#17楼

一个简单的解决方案是为Mac创建一个飞行模式。 以下是如何执行此操作:

  • 进入系统偏好设置中的网络
  • 单击位置下拉菜单
  • 单击加号图标以添加新位置
  • 将新位置命名为“飞行模式”或类似名称,然后单击“完成”
  • 从“位置”下拉菜单中选择刚刚创建的位置
  • 依次单击窗口左侧列表中的每个可用网络接口,禁用每个接口
  • 单击Configure iPv4菜单,然后选择Off
  • 对于Wi-Fi,只需点击“关闭Wi-Fi关闭”按钮即可
  • 单击“应用”,此位置将阻止所有网络活动

如果要重新打开网络,只需从“位置”下拉菜单中选择“自动”,然后单击“应用”

  • 这个解决方案的功劳: http : //hints.macworld.com/article.php?story = 20130325002258846

#18楼

只需在Mac OSX中关闭您的WiFi就可以了!


#19楼

只需更新当前日期的答案。 从Xcode 4(?)开始, /Applications/Utilities有一个名为Network Link Conditioner的首选项窗格。 您可以使用其中一个现有的配置文件,也可以创建自己的自定义配置文件,其中0 Kbps向上/向下链接和100%删除。

是否可以在iOS模拟器中禁用网络?相关推荐

  1. iOS项目中的网络请求和上下拉刷新封装

    代码地址如下: http://www.demodashi.com/demo/11621.html 一.运行效果图 现在的项目中不可避免的要使用到网络请求,而且几乎所有软件都有上下拉刷新功能,所以我在此 ...

  2. iOS模拟器中图片在mac电脑中的实际位置

    iOS模拟器中图片在mac电脑中的实际位置 位置:/Users/hyf/Library/Developer/CoreSimulator/Devices/CE85A44B-79C7-497D-A020- ...

  3. android调用虚拟摄像头方法,Android:如何在模拟器中使用网络摄像头?

    我通过在AVD Manager中将前置摄像头设置为" webcam0"将摄像头连接到仿真器. 启动模拟器的相机应用程序时,出现错误 CameraService::connect X ...

  4. ios关闭摇动撤销代码_如何在iOS 9中禁用“摇动撤消”功能

    ios关闭摇动撤销代码 iOS allows you to shake your phone to undo typing you just did in apps such as Messages, ...

  5. ios 模拟器中应用程序的存储路径

    模拟器下应用程序的位置 ~/资源库/Application Support/iPhone Simulator/<IOS SDK 版本> ~是当前用户跟目录 如:/Users/admin/L ...

  6. 在 iOS 模拟器中调试 Web 页面

    转自:http://taobaofed.org/blog/2015/11/13/web-debug-in-ios/ 双十一大家"买买买"了吗?我猜你们要么是躺在沙发上,要么是躲在被 ...

  7. cocoscreator2.4.3构建发布多平台包并在IOS模拟器中运行游戏

    1.打开游戏 vip_kingdown_rush_2 ,点击构建发布,打开Editor Window,选择发布平台与发布路径,如Mac平台,发布路径为工程目录下build文件夹,然后点击构建,可生成M ...

  8. python 有没有禁用网络的方法_如何在Python Cod中禁用网络连接

    是否可以在Windows7中禁用和启用Python中的网络连接?我在这里看到一个关于这个的问题:How to programmatically enable/disable network inter ...

  9. iOS模拟器中修改textField键盘类型为中文输入和键盘弹出方法

    一开始傻乎乎的一直以为和Xcode 里面对于 textField 的属性设置中的 Keyboard Type 有关..后来才想到模拟器就是个 iPhone 手机啊..看到自己模拟器中显示运营商的部分写 ...

最新文章

  1. 【神经网络】(6) 卷积神经网络(VGG16),案例:鸟类图片4分类
  2. python Intel Realsense D435 图像自动采集程序 自动剔除模糊图像
  3. python中循环结构关键字,04.循环结构
  4. linux kvm安装win7,ubuntu14.04 使用kvm安装win7系统
  5. 解决VM虚拟机中ubuntu系统上不了网的问题
  6. .NET深入学习笔记(4):深拷贝与浅拷贝(Deep Copy and Shallow Copy)
  7. JavaScript对数组的常见操作
  8. JavaScript和jQuery的DOM操作
  9. java常用类有哪些_java中的常用类有哪些
  10. 用python快速开发一个实用的socket服务器
  11. 如何在 Mac 上给文件、文件夹和磁盘重新命名?
  12. 宠物医院app开发的功能有哪些?
  13. Jetson Nano设置开机启动程序
  14. 考教师资格证需要买书吗?
  15. Flutter for ble 之set_notification_error, could not locate CCCD descriptor for characteristic分析(原生角度)
  16. 15-面向对象的程序设计--no
  17. kaggle员工离职预测——SVC
  18. 企业资金链断裂如何表现在现金流量表中?看净现金流量吗?
  19. 解决npm没有权限的问题
  20. 【每日一题】day1(星际密码->斐波那契)

热门文章

  1. 自己的笔记本上设置RabbitMQ集群
  2. SNS网站建设策划书
  3. python 神经网络图像增强_非常好用的Python图像数据增强工具,适用多个框架
  4. 网络秒杀背后猫腻多 秒杀器侵害买卖双方权益
  5. 电脑重装系统后Win11mmc无法创建管理单元如何解决
  6. 盐城北大青鸟“致最爱的你”感恩母亲节特别活动
  7. 用Spirent Test Center测试交换机Head of Line(HOL)Blocking
  8. mysql latid1_MySQL触发器的基础知识分享
  9. 豆瓣爬虫TOP250
  10. 通过三种情况深度分析,复杂的公网环境,网络穿透如何做到?丨C++后端开发丨P2P丨c/c++Linux服务器开发丨网关API