zoukankan      html  css  js  c++  java
  • iOS网络监控— BMReachability

    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

  • 相关阅读:
    Windows8.1 + Nvidia cuda8.0 + Vs2015
    读《鲜花帝国》有感
    oracle-sql书写
    oracle--聚合函数和case when结合使用
    oracle正则表达式
    oracle中case when使用
    oracle分区表之列表分区
    linux下oracl字符集修改(WE8ISO8859P1 --> ZHS16GBK)
    linux 下安装oracle数据库
    oracle学习笔记
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/6786156.html
Copyright © 2011-2022 走看看