AFNetworkReachabilityManager 网络状态监控

常规的做法是程序一启动的时候就开启网络监控
在AppDelegate.m文件中增加如下代码
    //1.开始监控网络状况
[[AFNetworkReachabilityManager sharedManager] startMonitoring];
在需要判断网络是哪种状态(手机网络,WiFi,没有网)增加如下代码
//根据网络状态来加载图片
AFNetworkReachabilityManager *mgr = [AFNetworkReachabilityManager sharedManager];
//获得原图(大图) (SDImageCache的图片缓存是用图片的url字符串作为key)
UIImage *originImage= [[SDImageCache sharedImageCache] imageFromDiskCacheForKey:topic.image1];
if (originImage) {
    self.imageView.image = originImage;
}else{
    if (mgr.isReachableViaWiFi) {//wifi环境
        [self.imageView sd_setImageWithURL:[NSURL URLWithString:topic.image1]];
    }else if (mgr.isReachableViaWWAN){//手机自带网络
        [self.imageView sd_setImageWithURL:[NSURL URLWithString:topic.image]];
    }else {//没有网络  必须要清空 不然的话 是会出现循环引用的问题 这个cell显示别的cell的图片
        self.imageView.image = nil;
    }
}

你可能感兴趣的:(AFNetworkReachabilityManager 网络状态监控)