Iphone 后台网络检查

Iphone 后台网络检查,iphone,objective-c,ios,xcode,ipad,Iphone,Objective C,Ios,Xcode,Ipad,我有一个应用程序,每当有一些活动(如视图更改)时,都会显示网络可用性。但是,我正在寻找一个在后台运行的代码来检查网络可用性,即使我在同一屏幕上处于空闲状态,它也必须显示一条消息“网络不可用/网络可用”我使用这段代码来检测网络可用性。我基本上是通过声明本地VAR来确定我是否使用WiFi或3G网络,或者是否可以使用互联网 每隔一段时间就会发出通知&更新这些变量。你可以访问这些布尔变量来了解状态 - (void)checkNetworkStatus:(NSNotification *)notice {

我有一个应用程序,每当有一些活动(如视图更改)时,都会显示网络可用性。但是,我正在寻找一个在后台运行的代码来检查网络可用性,即使我在同一屏幕上处于空闲状态,它也必须显示一条消息“网络不可用/网络可用”

我使用这段代码来检测网络可用性。我基本上是通过声明本地VAR来确定我是否使用WiFi或3G网络,或者是否可以使用互联网

每隔一段时间就会发出通知&更新这些变量。你可以访问这些布尔变量来了解状态

- (void)checkNetworkStatus:(NSNotification *)notice
{
    // called after network status changes
    NetworkStatus internetStatus = [internetReachable currentReachabilityStatus];

    switch(internetStatus)
    {
        case NotReachable:
        {
            //NSLog(@"The internet is down.");
            self.internetActive = NO;
            break;
        }
        case ReachableViaWiFi:
        {
            //NSLog(@"The internet is working via WIFI.");
            self.internetActive = YES;
            break;
        }
        case ReachableViaWWAN:
        {
            //NSLog(@"The internet is working via WWAN.");
            self.internetActive = YES;
            break;
        }
    }

    NetworkStatus hostStatus = [hostReachable currentReachabilityStatus];
    switch (hostStatus)
    {
        case NotReachable:
        {
            //NSLog(@"A gateway to the host server is down.");
            self.hostActive = NO;
            break;
        }
        case ReachableViaWiFi:
        {
            //NSLog(@"A gateway to the host server is working via WIFI.");
            self.hostActive = YES;
            break;
        }
        case ReachableViaWWAN:
        {
            //NSLog(@"A gateway to the host server is working via WWAN.");
            self.hostActive = YES;
            break;
        }
    }
    return;
}