1. What's BMReachability?

BMReachability是基于AFNetworking的Reachability类封装的监听网络状态变化的组件。 它在AF提供的无网络/wifi/蜂窝网络推断的基础上,添加了对2G/3G/4G网络的推断。

typedef NS_ENUM(NSInteger, BMNetworkReachabilityStatus) {

BMNetworkReachabilityStatusUnknown = -1,

BMNetworkReachabilityStatusNotReachable = 0,

BMNetworkReachabilityStatusReachableViaWWAN = 1,

BMNetworkReachabilityStatusReachableViaWiFi = 2,

BMNetworkReachabilityStatusReachableVia2G = 3,

BMNetworkReachabilityStatusReachableVia3G = 4,

BMNetworkReachabilityStatusReachableVia4G = 5,

};

2. 系统要求:

最低要求支持 iOS 7.0 版本号

3. How To Use?

在你的类中导入BMReachability.h头文件,添加BMAddNetworkStatusObserver(self)监听,并实现BMNetworkStatusProtocol,在监听对象销毁时请注意移除监听BMRemoveNetworkStatusObserver(self)

Example:

- (void)dealloc{

BMRemoveNetworkStatusObserver(self);

}

- (void)viewDidLoad {

[super viewDidLoad];

BMAddNetworkStatusObserver(self);

}

#pragma mark - BMNetworkStatusProtocol

- (void)networkStatusDidChangedFromStatus:(BMNetworkReachabilityStatus)fromStatus

toStatus:(BMNetworkReachabilityStatus)toStatus{

NSLog(@"*****************************************");

if (fromStatus != toStatus) {

NSLog(@"========状态改变了啊=========");

}

NSLog(@"fromStatus: %@ toStatus: %@",@(fromStatus),@(toStatus));

NSString *statusStr = [[BMEnvObserverCenterNetworkStatus defaultCenter] currentNetWorkStatusString];

NSLog(@"当前网络状态为: %@",statusStr);

}

特别提示: 你必需要在监听类销毁时调用BMAddNetworkStatusObserver(self);

4. QA 

欢迎交流,在使用中遇到问题。能够给留言,当然最好自己试着改动。有好的建议,也希望给留言。或者新浪微博联系我 新浪微博:http://weibo.com/rubbishpicker

github地址:https://github.com/pjk1129/BMReachability

iOS网络监控— BMReachability的更多相关文章

  1. 如何实现一个IOS网络监控组件

    此文由作者朱志强授权网易云社区发布. Mobile Application Monitor IOS组件设计技术分享 背景 应用程序性能管理Application Performance Managem ...

  2. iOS中 WGAFN_网络监控 技术分享

    需要用到第三方AFNetworking/SVProgressHUD 没有的可以关注我微博私信我.http://weibo.com/hanjunqiang AppDelegate.m #import & ...

  3. iOS网络相关知识总结

    iOS网络相关知识总结 1.关于请求NSURLRequest? 我们经常讲的GET/POST/PUT等请求是指我们要向服务器发出的NSMutableURLRequest的类型; 我们可以设置Reque ...

  4. iOS网络监测方法

    方法一(官方): Reachability ============================================================================== ...

  5. Alamofire源码解读系列(七)之网络监控(NetworkReachabilityManager)

    Alamofire源码解读系列(七)之网络监控(NetworkReachabilityManager) 本篇主要讲解iOS开发中的网络监控 前言 在开发中,有时候我们需要获取这些信息: 手机是否联网 ...

  6. iOS 网络操作与AFNetworking

    一.早前的几个网络框架 1.ASI框架: HTTP终结者.很牛, 但是有BUG, 已经停止更新. 2.MKNetworkKit (印度人写的). 3.AFN一直还在更新. AFNetworking的出 ...

  7. [翻译] PBJNetworkObserver 网络监控

    PBJNetworkObserver 网络监控 https://github.com/piemonte/PBJNetworkObserver Introduction 'PBJNetworkObser ...

  8. iOS网络高级编程:iPhone和iPad的企业应用开发之错误处理

    本章内容 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWluZ2h1YXdlbmthbmc=/font/5a6L5L2T/fontsize/400/fi ...

  9. servercat IOS Linux监控 SSH客户端

    servercat IOS Linux监控 SSH客户端 iOS 平台上新出的一个挺有趣的服务器监控 + SSH 客户端. 监控服务器状态,内存.CPU.网络 还能对Docker容器进行监控 价格:¥ ...

随机推荐

  1. [BZOJ4012][HNOI2015]开店(动态点分治,树链剖分)

    4012: [HNOI2015]开店 Time Limit: 70 Sec  Memory Limit: 512 MBSubmit: 2168  Solved: 947[Submit][Status] ...

  2. 【贪心】【堆】Gym - 101485A - Assigning Workstations

    题意:有n个人,依次来到机房,给你他们每个人的到达时间和使用时间,你给他们分配电脑,要么新开一台, 要么给他一台别人用完以后没关的.一台电脑会在停止使用M分钟后自动关闭.让你最大化不需要新开电脑的总人 ...

  3. editplus运行php 配置

    工具->配置用户工具->添加工具:Menu Text 改成runphp或者其他任名称.Command 安装的php.exe的地址.如D:\ wamp\php\php5.4.3\php.ex ...

  4. windows下eclipse搭建android_ndk开发环境

    安装cygwin: 由于NDK编译代码时必须要用到make和gcc,所以你必须先搭建一个linux环境, cygwin是一个在windows平台上运行的unix模拟环境,它对于学习unix/linux ...

  5. codeforces 85D D. Sum of Medians Vector的妙用

    D. Sum of Medians Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://codeforces.com/problemset/prob ...

  6. AtCoder Beginner Contest 022 A.Best Body 水题

    Best Body Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://abc022.contest.atcoder.jp/tasks/abc02 ...

  7. csv文件导入到mysql

    如何将csv文件导入到mysql数据库呢,方法有很多但最简单粗暴的方法还是用sql语句啦,像下面这样. LOAD DATA LOCAL INFILE 'csv文件路径' INTO TABLE 数据表名 ...

  8. java 中hashcode 与 equals的关系

    equals()相等的两个对象,hashcode()一定相等: equals()不相等的两个对象,却并不能证明他们的hashcode()不相等. 反过来: hashcode()不等,一定能推出equa ...

  9. Virtual Treeview - Paint cycles and stages

    The most complex process in Virtual Treeview is without doubts its painting. Read here what stages V ...

  10. VS2010 + IDA SDK 搭建IDA Plugin开发环境

    http://www.h4ck.org.cn/2011/11/vs2010-idasdk6-2-ida-plugin-development/ 1. 执行菜单的File->New->Pro ...