我正在开发一个处理Web服务的iOS应用程序.我正在使用此代码来检测我是否有网络连接.如果我没有互联网连接,我将展示一个视图,说明没有互联网连接(类似于iOS应用商店的方式).我的问题是,我不确定将此代码放入哪种方法.
我希望每次用户打开应用程序和/或使用其他应用程序切换到应用程序(即我的应用程序在后台打开并且用户切换到它)时,它会检查网络状态.我认为把它放在我的应用程序委托会工作,但它没有.我还考虑将它放在我的每个视图控制器viewWillAppear方法中,但是没有用.
知道在哪里放这个代码?
如果您打算使用网络连接,请查看AFNetworking
https://github.com/AFNetworking/AFNetworking
最新版本的AFNetworking(2.0)现在建立在NSURLSession之上,因此您可以获得所有提供的强大功能.但是,您还可以获得许多额外的功能 - 例如序列化,可达性支持,UIKit集成(例如在UIImageView中异步加载图像的便捷类别)等等.它也是最广泛使用的开源项目之一,在Github上拥有超过10,000颗星,2,600个分支和160个贡献者.
它有一个称为AFNetworkReachabilityManager处理您的请求的功能.
[[AFNetworkReachabilityManager sharedManager] startMonitoring];
[[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {
DLog(@"Reachability: %@", AFStringFromNetworkReachabilityStatus(status));
switch (status) {
case AFNetworkReachabilityStatusReachableViaWWAN:
case AFNetworkReachabilityStatusReachableViaWiFi:
[operationQueue setSuspended:NO];
NSLog(@"WIFI");
break;
case AFNetworkReachabilityStatusNotReachable:
default:
[operationQueue setSuspended:YES];
NSLog(@"oflline");
break;
}
}];
Run Code Online (Sandbox Code Playgroud)
你可以在这里找到这个代码
| 归档时间: |
|
| 查看次数: |
2560 次 |
| 最近记录: |