ios - 持续检测互联网连接

标签 ios objective-c reachability

我希望我的应用能够自动检测互联网连接中断。所以我使用以下代码。

- (void)applicationDidBecomeActive:(UIApplication *)application {

    Reachability *networkReachability = [Reachability reachabilityForInternetConnection];
    NetworkStatus networkStatus = [networkReachability currentReachabilityStatus];
    if (networkStatus == NotReachable) {
        [Settings hideSpinner];
         //Show no internet connectivity dialog.
    } else {
    }
}

但问题是它没有持续检查互联网连接。 它仅在应用程序激活时检查。我如何才能在整个应用程序生命周期中持续检查互联网连接并在互联网自动关闭时发出警告?

最佳答案

应用程序启动后,您可以触发 NSTimer 来执行相同的操作:

- (void)applicationDidBecomeActive:(UIApplication *)application {
   NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0f
                                              target:self
                                            selector:@selector(checkForConnectivity)
                                            userInfo:nil
                                             repeats:YES];
}

-(void)checkForConnectivity {
       Reachability *networkReachability = [Reachability reachabilityForInternetConnection];
       NetworkStatus networkStatus = [networkReachability currentReachabilityStatus];
       if (networkStatus == NotReachable) {
              //No internet connectivity - perform required action
       }
       else {
              //Internet connectivity is valid
      }
}

谢谢!

关于ios - 持续检测互联网连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38691583/

相关文章:

ios - 单击按钮将项目添加到另一个 View Controller TableView

objective-c - 带回调的 CAAnimation

ios - Swift - 可达性崩溃

ios - `SCNetworkReachabilityScheduleWithRunLoop` 还是 `SCNetworkReachabilitySetDispatchQueue`?和比赛条件

ios - Segue 在之前的代码之前执行

iphone - UILabel lineBreakMode剪辑不剪辑文本

IOS storekit 订阅免费试用无效

ios - 错误 : "nested pop animation can result in corrupted navigation bar"

iphone - CIFilter 集成仅适用于 CISepiaTone

iphone - 网络连接警告