iOS Reachability 实时监测网络 会调用两次那点事

苹果的实时监测网络Reachability

1.去苹果网站下载Reachability类(.h  .m )文件 https://developer.apple.com/library/content/samplecode/Reachability/Introduction/Intro.html  

2.将Reachability.h  Reachability.m 拖到工程中

3.在AppDelegate中

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

Reachability *reach = [Reachability reachabilityWithHostName:@"www.baidu.com"];

[reach startNotifier]; 

}

4.在需要的地方添加通知

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reachabilityChange:) name:kReachabilityChangedNotification object:nil];

5.在reachabilityChange: 中实现网络状态改变后的方法

6.注意:当网络变化的时候会发两次通知 网络变化前 , 网络变化后 各发一次 

例如: 当从WiFi变化到数据网络时  会得到两个网络状态 一个WiFi  一个数据网络

在处理的时候要注意,如果要区分 先定义一个变量存储前一个状态 再进行处理

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、说明 在网络应用中,需要对用户设备的网络状态进行实时监控,有两个目的: (1)让用户了解自己的网络状态,防止一...
    SmilePast丶阅读 4,758评论 0 1
  • 最近看到一些app上有做到网络切换的时候,有提示有提醒是否使用4G/3G,回到wifi又可以马上回归,下面MARK...
    一支烟一只猿阅读 3,986评论 2 6
  • 在项目中实现网络的实时监测有两种方式:一种是采用第三方网络请求的网络检测方法,一种是使用OC自带的网络检测方法。我...
    胖胖的立阅读 1,228评论 0 0
  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 3,721评论 2 7
  • 昨天晚上回到酒店,妈妈说我到这把年纪了还没见识过这么好的酒店,然后早早就睡了,太累了。 今天一早到珊瑚自助餐厅吃自...
    真泥阅读 167评论 0 0