前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网络状态检测Reachability

网络状态检测Reachability

原创
作者头像
大师级码师
修改2021-11-01 09:20:05
6730
修改2021-11-01 09:20:05
举报
文章被收录于专栏:大师级码师大师级码师
代码语言:javascript
复制
#import "Reachability.h"
@interface JRViewController ()<UIActionSheetDelegate>
@property(nonatomic,strong)  Reachability * reach;
@end
@implementation JRViewController

(void)viewDidLoad {
  [super viewDidLoad];

//监听Reachability.h————————————————————————————————————————————————————————————————

//
[self monitorNetState:nil];

// 开启通知监控,实时等待
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(monitorNetState:) name:kReachabilityChangedNotification object:nil];//object是指监听谁发出的通知,在这里可以写self.reach,也可以写nil
[self.reach startNotifier];//一定要写开始监控


}
//**
//reachability监听————————————————————————————————————————————————————————————————

(void) monitorNetState:(NSNotification *)noti
{
  NSLog(@"%@", noti);
  if(self.reach==nil)//
  {
  self.reach=[Reachability reachabilityForInternetConnection];//不是单例



    //他还有两个子类

//        ReachableViaWiFi;
//        ReachableViaWWAN;

}

if(self.reach.currentReachabilityStatus!=NotReachable)
{

    if (self.reach.currentReachabilityStatus==ReachableViaWiFi)
    {
        NSLog(@"wifi");
    }
    else
    {
        NSLog(@"3g/2g");
    }
}
else
{
    NSLog(@"没有网");
}

}
//移除监听
-(void)dealloc{
    //reachability需要自己停止
    [self.reach stopNotifier];

[[NSNotificationCenter defaultCenter] removeObserver:self];

}
@end </pre> 

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档