您的位置:首页 > 理论基础 > 计算机网络

ios-监听网络状态

2015-10-12 17:27 666 查看
1.https://github.com/tonymillion/Reachability 通过该网址下载Reachability三方库

2.

#import "Reachability.h"

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

// Override point for customization after application launch.

[self
netalert];

[self
netWorking];

return YES;
}
-(void)netalert{

Reachability *reach = [Reachability
reachabilityForInternetConnection];

NetworkStatus status = [reach
currentReachabilityStatus];

[self
stringFromStatus:status];
}
-(void)stringFromStatus:(NetworkStatus)statusNet
{

NSString *string ;

switch (statusNet) {

case
NotReachable:

NSLog(@"%ld",statusNet);

break;

case
ReachableViaWiFi:

NSLog(@"%ld",statusNet);

break;

case
ReachableViaWWAN:

NSLog(@"%ld",statusNet);

break;

default:

break;
}
}

-(void)netWorking//异步监听网络------>全局
{

//监听网络;

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

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

}
-(void)reachabilityChanged:(NSNotification *)notification{

Reachability *reach = [notification
object];

if ([reach isKindOfClass:[Reachability
class]]) {

NetworkStatus status = [reach
currentReachabilityStatus];

NSLog(@"%ld",(long)status);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: