欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > > 内容正文

IOS 监控网络变化

来源: 开发者 投稿于  被查看 12686 次 评论:149

IOS 监控网络变化


随着移动网络升级:2G->3G->4G甚至相传正在研发的5G,网络速度是越来越快,但这流量也像流水一般哗哗的溜走。

网上不是流传一个段子: 睡觉忘记关流量,第二天房子就归移动了!

这固然是一种夸张的说法,但是作为一个优秀的App开发人员,我们需要在App中给出最恰当的提示。

在需要花费大量流量的时候(例如:视频,下载等)给出一些提示。

在用户视频期间用户切换网络的时候给出是否继续观看的提示!

下面笔者就给出一种可以实时监控网络状态改变的方法!

笔者使用的是网络流传最广的网络监控类:Reachability

点击此处下载本文Demo:点击下载

将上部所下载的文件解压,将NetworkReachability文件夹加入你需要添加的工程之中。

示例说明:此示例用于演示关于如何使用SystemConfiguratio Reachalility程序接口来判定相关的网络连接状态及状态 变 化,所以在使用此示例中的Reachability.(h/m)文件于自有的项目中的前提是必须引入 SystemConfiguration.framework。

\


导入头文件:

#import "NetworkReachability.h"

定义全局变量

NetworkReachability *_netReachability;

初始化变量并且给代理赋值

    _netReachability = [[NetworkReachability alloc] init];
    _netReachability.delegate = self;

代理的实现

#pragma mark - NetworkReachability Delegate

- (void)reachable:(NetworkStatus)netStatus {
    switch (netStatus) {
        case NotReachable:
            NSLog(@"No Network!");
            break;
        case ReachableViaWiFi:
            NSLog(@"WiFi");
            break;
        case ReachableViaWWAN:
            NSLog(@"3G");
            break;
        default:
            break;
    }
}

当然别忘了代理申明:




OVER!



用户评论