iPhone判断是否接入网络

在这里介绍一种较为简单的判断是否连接网络的方法,首先要引入Reachability.h和.m文件,没有这两个文件的话,google之。然后在***AppDelegate.h中声明如下:

NetworkStatus remoteHostStatus;
NetworkStatus internetConnectionStatus;
NetworkStatus localWiFiConnectionStatus;

...

//Network
@property NetworkStatus remoteHostStatus;
@property NetworkStatus internetConnectionStatus;
@property NetworkStatus localWiFiConnectionStatus;
- (void) registerNetworkChecking;
- (void) updateNetworkStatus;



然后在.m中实现:

- (void) registerNetworkChecking
{
[[Reachability sharedReachability] setHostName:@"www.baidu.com"];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(reachabilityChanged:)
name:@"kNetworkReachabilityChangedNotification"
object:nil];
//[self updateNetworkStatus];

}
#pragma mark NetworkStatus Notification
- (void)reachabilityChanged:(NSNotification *)note
{
//NSLog(@"reachabilityChanged");
[self updateNetworkStatus];
}

- (void)updateNetworkStatus
{
// Query the SystemConfiguration framework for the state of the device's network connections.
self.remoteHostStatus = [[Reachability sharedReachability] remoteHostStatus];
self.internetConnectionStatus = [[Reachability sharedReachability] internetConnectionStatus];
self.localWiFiConnectionStatus = [[Reachability sharedReachability] localWiFiConnectionStatus];
}


在需要判断的地方用:

***AppDelegate *appDelegate = (***AppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate registerNetworkChecking];
if (appDelegate.remoteHostStatus == NotReachable)
{
//未联网
}
else
{
//联网
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值