下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。
内存溢出小编现在分享给大家,也给大家做个参考。
如果你的工程里面是用的AFNetworking请求网络数据的话,那么可以直接使用 AFNetworkReachabilityManager.h来判断网络状态!如果是用的ASI的话,里面自带的有Reachability.m和 Reachability.h这两个类,下面会分开介绍这两个的使用方法。#import "AppDelegate.h"#import "VIEwController.h"#import "AFNetworkReachabilityManager.h"//af里面监听网络状态的类#import "fileManager.h"//单利模型,用来记录当前的网络状态@interface AppDelegate ()@end@implementation AppDelegate- (BOol)application:(UIApplication *)application dIDFinishLaunchingWithOptions:(NSDictionary *)launchOptions { VIEwController *vIEw = [[VIEwController alloc] init]; UINavigationController *nav = [[UINavigationController alloc] initWithRootVIEwController:vIEw]; self.window.rootVIEwController = nav; //调用网络状态 [AppDelegate netWorkStatus]; return YES;}+ (voID)netWorkStatus{ /** AFNetworkReachabilityStatusUnkNown = -1, // 未知 AFNetworkReachabilityStatusNotReachable = 0, // 无连接 AFNetworkReachabilityStatusReachableViaWWAN = 1, // 3G 花钱 AFNetworkReachabilityStatusReachableViaWiFi = 2, // WiFi */ // 如果要检测网络状态的变化,必须用检测管理器的单例的startMonitoring [[AFNetworkReachabilityManager sharedManager] startMonitoring]; // 检测网络连接的单例,网络变化时的回调方法 [[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) { //这是单利+模型,用来记录网络状态 fileManager *maa = [fileManager sharefileManager]; maa.netState = status; // NSLog(@"-----网络状态----%ld---%d", status,maa.netState); }];}
//// Singleton.h// SingletonModel//// Created by 琳小兮 on 15/5/21.// copyright (c) 2015年 琳小兮. All rights reserved.////因为方法名 shared"Classname"是连在一起的,为了让宏能够正确替换掉签名中的“Classname”需要在前面加上 ##//当宏的定义超过一行时,在末尾加上“\”表示下一行也在宏定义范围内。注意最后一行不需要加"\”。//使用方法:(单利配合模型使用很方便)//在.h里面(//公开的访问单利对象的方法singleton_interface(MyModel))//在.m里面(singleton_implementation(MyModel))#define singleton_Interface(class) + (class *)share##class;#define singleton_implemetntion(class)\static class * instance = nil;\+ (class *)share##class\{\if (!instance) {\instance = [[class alloc]init];\}\return instance;\}\+ (class *)allocWithZone:(struct _NSZone *)zone\{\static dispatch_once_t onece;\dispatch_once(&onece, ^{\instance = [super allocWithZone:zone];\});\return instance;\}
#import <Foundation/Foundation.h>#import "Singleton.h"@interface fileManager :NSObjectsingleton_Interface(fileManager)@property (nonatomic,assign) int netState;@end
#import "fileManager.h"@implementation fileManagersingleton_implemetntion(fileManager)@end
+(BOol) isConnectionAvailable{ BOol isExistenceNetwork = YES; Reachability *reach = [Reachability reachabilityWithHostname:@"www.apple.com"]; NSParameterassert([reach isKindOfClass:[Reachability class]]); NetworkStatus stats = [reach currentReachabilityStatus]; if (stats == NotReachable) //没有网络 isExistenceNetwork = NO; else if (stats == ReachableVia3G) isExistenceNetwork = YES; else if (stats == ReachableVia2G) isExistenceNetwork = YES; else if (stats == ReachableViaWiFi) isExistenceNetwork = YES; if (!isExistenceNetwork) { return NO; } return isExistenceNetwork;}
以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
总结以上是内存溢出为你收集整理的iOS检测是否有网络连接全部内容,希望文章能够帮你解决iOS检测是否有网络连接所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)