PBJNetworkObserver 网络监控

https://github.com/piemonte/PBJNetworkObserver

Introduction

'PBJNetworkObserver' is an iOS component for detecting changes in network reachability state as well as connection type. For example, it can determine when an IP is being routed through a Wireless Wide Area Network (WWAN) interface such as 3G or LTE.

'PBJNetworkObserver'是一个iOS组件,用来监测网络状态的改变或者网络连接类型的改变.例如,他可以检测一个IP地址能否通过无线网络连接到广域网.

Mobile devices are frequently moving through connectivity challenged environments made up of various network interfaces. This component enables apps to easily monitor these network changes and allow opportunities to refresh, cache, or even provide user interface feedback when they occur.

移动设备会经常的变更连接网络的方式,这个组件能帮助app快速的监测网络的改变,给你机会来刷新,缓存或者是给用户提示信息告知发生了什么.

Some common uses include auto-refresh, logic that can be triggered for a view if the device upgrades from an EDGE network to a WiFi access point allowing more or higher quality data to be quickly loaded.

一些常见的用处有自动刷新,还有一些实现逻辑如监测到了用户从EDGE网络变更为WiFi后允许大容量的数据快速加载.

Observers are notified when a network is no longer reachable, the network becomes reachable, and when the network interface type changes.

这些情况下会通知观察者:网络连接不上了,网络刚刚能连接上,网络连接的类型改变了.

If you have questions, github issues is a great means to start a discussion, this allows others to benefit and chime in on the project too.

如果你有什么疑问,这个 github issues 地方可以很便利的讨论问题,让别人看到问题后也能改进这个项目.

Usage

#import "PBJNetworkObserver.h"
@interface MyClass () <PBJNetworkObserverProtocol>
// add observer on init or viewDidAppear
[[PBJNetworkObserver sharedNetworkObserver] addNetworkReachableObserver:self]; // remove observer on dealloc or on viewDidDisappear
[[PBJNetworkObserver sharedNetworkObserver] removeNetworkReachableObserver:self];
- (void)networkObserverReachabilityDidChange:(PBJNetworkObserver *)networkObserver
{
// network status changed, these properties can also be queried at any time
BOOL isNetworkReachable = [networkObserver isNetworkReachable];
BOOL isCellularConnection = [networkObserver isCellularConnection];
NSLog(@"network status changed reachable (%d), cellular (%d)", isNetworkReachable, isCellularConnection);
}

[翻译] PBJNetworkObserver 网络监控的更多相关文章

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

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

  2. Linux下smokeping网络监控环境部署记录

    smokeping是一款监控网络状态和稳定性的开源软件(它是rrdtool的作者开发的),通过它可以监控到公司IDC的网络状况,如延时,丢包率,是否BGP多线等:smokeping会向目标设备和系统发 ...

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

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

  4. 开源网络监控管理系统:OpenNMS

    OpenNMS是一个开源的企业级基于Java/XML的分布式网络和系统监控管理平台.OpenNMS是管理网络的绝好工具,它能够显示网络中各中终端和服务器的状态和配置,为方便地管理网络提供有效的信息. ...

  5. [svc]容器网络学习索引及网络监控

    整理的可能有些误失,抽时间在细细的分类完善下. 发现这篇对于网络从低到高层协议整理的还不错 每层都有一些有意思的话题 一些协议有一些设计上的弱点, 所以产生了种种的网络层安全问题 一般我们学一些 1, ...

  6. 解疑网络监控卡壳 视觉体验400ms延时

    http://security.zol.com.cn/413/4130220.html 我的眼睛可以轻松判断出400ms延时误差,你可以吗?很多用户都反映手机移动监控.PC远程监控视频会卡顿,抛开设备 ...

  7. Hi3518 网络监控SOC芯片规格参数

    Hi3518 网络监控SOC芯片 视频编解码   处理器内核 ●   ARM926@ 440MHz,16KB I-Cache ,16KB D-Cache 视频编码 ●   H.264 Main Pro ...

  8. smokeping网络监控

    一.smokeping介绍 我们在选择机房的时候,如何知道这个机房的网络情况,这个时候就要用到网络监控软件:smokeping 本文主要介绍如何使用smokeping来监控idc机房的网络质量情况,从 ...

  9. 百度网络监控实战:NetRadar横空出世(下)

    原文:https://mp.weixin.qq.com/s/CvCs-6rX8Lb5vSTSjYQaBg 转自订阅号「AIOps智能运维」,已授权运维帮转发 作者简介:运小贝,百度高级研发工程师 负责 ...

随机推荐

  1. MongoDB权威指南--笔记

    mongodb并不具备一些在关系型数据库中很普遍的功能,如连接和复杂的多行事务. 集合-->文档-->id id在文档所属的集合中是唯一的. db.help()查看数据库级别的帮助,db. ...

  2. scrollview 滚动布局

    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"    android:layou ...

  3. 编辑器之Sublime Text3、Notepad++

    Sublime text 3 破解版是一款极其强大的代码编辑器,又是一款可以代替记事本的文本编辑器.Sublime text 3拥有着美观的界面和实用的功能,既能够完成代码的编辑又能够完成文本编辑,还 ...

  4. 第 17 章 使用API

    在本章中,我们将学习如何编写一个独立的程序,并对其获取的数据进行可视化.这个程序将使用Web应用编程接口(API)自动请求网站的特定信息而不是整个网页,再对这些信息进行可视化.由于这样编写的程序始终使 ...

  5. vue中methods、watch、computed之间的差别对比以及适用场景

    首先要说,methods,watch和computed都是以函数为基础的,但各自却都不同: 一.computer 当页面中有某些数据依赖其他数据进行变动的时候,可以使用计算属性. <p id=& ...

  6. scrollview和viewpager滑动冲突

    import android.content.Context; import android.util.AttributeSet; import android.view.MotionEvent; i ...

  7. GIT修改邮箱

    git报错-->! [remote rejected] master -> master (push declined due to email privacy restrictions) ...

  8. Vim的一些补充

    查看当前路径 :pwd 切换当前路径到当前打开文件所在路径 :cd %:p:h 解释: %表示当前文件名,%:p表示包含文件名的全部路径,%:p:h表示文件所在路径(head of the full ...

  9. spring中使用@Value设置全局变量默认值

    前几天在开发过程中遇到一个使用 spring 的 @Value 给类的全局变量设置默认值不成功的问题,最后通过查资料也是轻松解决,但是发现使用@Value也是有多种多样的方式,今天总算是将开发任务结束 ...

  10. WebLogic Server

    前几天,看了几集J2ee , 给我的感觉就是,看不懂!! 一点也不懂! 那怎么办呢? 听老师的,不管懂不懂,先看看再说.接下来,就开始了J2ee "艰苦"的历程.在J2ee中,经常 ...