iOS模拟各种网络状态

在iOS开发中我们有在各种不同网络状态下测试app运行状态的需求。苹果给我们提供了在模拟器和真机状态下,模拟各种网络状态的软件。

在模拟器中

苹果提供的模拟网络状态的工具官网地址
下载该工具需要登录Apple ID,根据需求选择不同的版本。

选择如图所示,点击Network Link Conditioner.prefPane运行

在系统偏好设置中出现了该工具的选项

不同选项对应的网络状态。

  • Preset Profiles 预设网络状况
配置 说明
100%Loss 全丢包
3G 3G网络
DSL 电话线上网
Edge 2G网络
High Latency DNS 高延迟
Very Bad Network 网络状况不稳定
Wifi Wifi网络
  • Custom Profiles 自定义网络状况。
注意点:该工具是对全局有效的,如果开启了某一项网络状态,对整个系统都有效。所以在测试完app后要及时关闭。
真机

苹果在iOS系统中预置了网络调试工具,但是只有添加过测试设备,并使用Xcode连接下设备才能激活.

  • Xcode未连接前

Xcode连接后发现设置中多出来一项:开发者

选择Status

里面的选择和在mac上的选项一样。

注意点:开发者选项也是对全局有效的,如果开启了某一项网络状态,对整个系统都有效。所以在测试完app后要及时关闭。
其他

模拟网络状态还可以使用网络分析神器Charles。有关Charles的使用请移步这里 个人认为苹果自带的工具已经给我们提供了足够强大的功能,并且使用简单方便。使用Charles岂不是杀鸡用牛刀。当然Charles的强大是不可否认,在此不表。

原文链接(戳这里):

>  http://www.jianshu.com/p/b12cee51c883

时间: 2024-07-29 05:56:57

iOS模拟各种网络状态的相关文章

IOS 模拟不同网络环境 - Network Link Conditioner

转自:http://hulefei29.iteye.com/blog/1782376  可进入Apple开发者下载中心,Network Link Conditioner包含在Hardware IO Tools工具包中,点击下载.  下载安装后,可看到其中有一个Network Link Conditioner.prefPane文件.  点击运行Network Link Conditioner.prefPane后,Network Link Conditioner就会被添加到系统偏好设置的其他分类中.

iOS实时监控网络状态的改变

在网络应用中,有的时候需要对用户设备的网络状态进行实时监控,有两个目的: (1)让用户了解自己的网络状态,防止一些误会(比如怪应用无能) (2)根据用户的网络状态进行智能处理,节省用户流量,提高用户体验 WIFI网络:自动下载高清图片 4G/3G网络:只下载缩略图 没有网络:只显示离线的缓存数据 常用的有以下两种方法: (1).使用苹果观法提供的检测iOS设备网络环境用的库 Reachablity (2).使用AFN框架中的AFNetworkReachabilityManager来监听网络状态的

iOS开发 - 检测网络状态(WIFI、2G/3G/4G)

检测网络状态 在网络应用中,需要对用户设备的网络状态进行实时监控,目的是 让用户了解自己的网络状态,防止一些误会(比如怪应用无能) 根据用户的网络状态进行智能处理,节省用户流量,提高用户体验 WIFI\3G网络:自动下载高清图片 低速网络:只下载缩略图 没有网络:只显示离线的缓存数据 苹果官方提供了一个叫Reachability的示例程序,便于开发者检测网络状态 https://developer.apple.com/library/ios/samplecode/Reachability/Rea

iOS 判断当前网络状态

1.如果只判断当前是否是无网的状态: if([Reachability reachabilityForLocalWiFi].currentReachabilityStatus==NotReachable&&[[Reachability reachabilityForInternetConnection] currentReachabilityStatus]==NotReachable) { //没网的操作 }else { //有网的操作 } 2.监听网络状态的改变 导入头文件 #impor

iOS开发-关于网络状态的判断

在判断网络状态这个问题上,苹果提供了一个叫Reachability的第三方库,但是这个库并不能真正的检测我们的网络状态,我也是在调试程序的时候发现的.详情可以阅读这个博客http://blog.csdn.net/openglnewbee/article/details/50705146 但是我并没有使用上面博客的方法,而是使用另外一种方法. 因为[Reachability reachabilityWithHostName:]完全没用,所以我把以下代码作为Reachablity类的成员函数添加到R

IOS - 总结(网络状态变更)

- (void)initNetworkMonitor { NSURL *baseURL = [NSURL URLWithString:@"http://www.baidu.com/"]; AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:baseURL]; NSOperationQueue *operationQueue = manager.op

iOS完美的网络状态判断工具

大多数App都严重依赖于网络,一款用户体验良好的的app是必须要考虑网络状态变化的.iOSSinger下一般使用Reachability这个类来检测网络的变化. Reachability 这个是苹果开发文档里面的一个类,官方写的,用来判断网络的变化,包括无网络,wifi,和蜂窝三种情况.Reachability类实际上是苹果公司对SCNetworkReachability API的封装,使用方法比较简单,这里不再介绍.说说它的优缺点: 优点 使用简单,只有一个类,官方还有Demo,容易上手 灵敏

ios测试基础六:ios模拟不同网速

iOS模拟不同网络速度,模拟2G 3G网速下,检验手机上运行是否正常,各种loading图标使用是否正常等 前提准备: 1. 电脑 上安装 charles或者fiddler 代理软件: 2. iphone真机或模拟器: 操作步骤: 1.将iphone真机绑定 代理,电脑上打开代理软件,比如charles 2. 在charles菜单 栏上 选择 "Proxy"--"Throttle Setting"; 3. 在打开的弹框中,作如下选择,点击"ok"

iOS网络-AFNetworking检测网络状态

可以使用AFN框架中的AFNetworkReachabilityManager来监听网络状态的改变,也可以利用苹果提供的Reachability来监听.建议在开发中直接使用AFN框架处理. 示例代码如下: -(void)afn { //1.创建网络状态监测管理者 AFNetworkReachabilityManager *manger = [AFNetworkReachabilityManager sharedManager]; //2.监听改变 [manger setReachabilityS