iOS 連網狀態監測

來源:互聯網
上載者:User

標籤:

#import "ViewController.h"

#import "Reachability.h"

 //註:工程需要引入Reachability.h 與 Reachability.m

@interface ViewController ()

 

@property(nonatomic,strong)Reachability *reach;

 

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

 

    // 判斷能否串連到某一個主機

    // http://www.baidu.com

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

    

    // 添加通知 監測網路狀態

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

    

    // 開始監聽

    [self.reach startNotifier];

}

 

- (void)dealloc

{

    // 停止監聽

    [self.reach stopNotifier];

    

    // 移除監聽 // 移除整個控制器裡所有的監聽

//    [[NSNotificationCenter defaultCenter] removeObserver:self];

    // 移除控制器裡的kReachabilityChangedNotification監聽

    [[NSNotificationCenter defaultCenter] removeObserver:self name:kReachabilityChangedNotification object:nil];

}

 

 

- (void)reachabilityChanged

{

    // 網路狀態

    switch (self.reach.currentReachabilityStatus) {

        case NotReachable:

            NSLog(@"沒有串連");

            break;

        case ReachableViaWiFi:

            NSLog(@"WiFi");

            break;

        case ReachableViaWWAN:

            NSLog(@"WWAN");

            break;

            

        default:

            NSLog(@"無");

            

            break;

    }

}

 

@end

iOS 連網狀態監測

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.