OStack程序员社区-中国程序员成长平台

标题: iphone - 后台网络检查 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 20:42
标题: iphone - 后台网络检查

我有一个应用程序,只要有一些事件(例如 View 更改),它就会显示网络可用性。但是,我正在寻找一个在后台运行的代码来检查网络可用性,即使我将在同一屏幕上空闲并且它必须显示一条消息“网络不可用/网络可用”



Best Answer-推荐答案


我使用这段代码来检测网络可用性。我基本上声明本地变量来弄清楚我是在 WiFi 还是 3G 网络上,或者互联网是否可用。

通知每隔一段时间就会出现并更新这些变量。您可以访问这些 BOOL 变量以了解状态。

- (void)checkNetworkStatusNSNotification *)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;
}

关于iphone - 后台网络检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8430351/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4