下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

你是否知道IOS获取网络的两种方法。

作者:课课家教育     来源: http://www.kokojia.com点击数:1282发布时间: 2019-03-19 10:50:12

标签: IOS网络IOS开发IOS开发流程

  本文主要是给大家汇总介绍了iOS获取网络类型的方法,主要涉及到方面的内容,对于IOS开发感兴趣的同学可以参考一下,获取iOS网络状态,我目前知道的有两种办法,下面是给大家带来这两种方法的一个代码的演示,希望能够帮助到大家。

  第一种方法:使用Reachability。

  相信大家使用最多的方法就是使用Reachability,这也是苹果的官方演示demo中使用到的方法。

  1、方法就是首先你需要下载并导入Reachability。这是苹果官方演示demo,把里面的Reachability文件拷贝到自己的工程文件里面。

  2、下载好之后,接下里就是导入SystemConfiguration.framework框架。

  3、我们来分析reachability中的代码的一个含义,可以看到以下三种网络状态:无网络,WiFi和蜂窝网,看到下面的代码显示:

  [html]viewplaincopy

  typedef enum : NSInteger {  

      NotReachable = 0,//没有网络  

      ReachableViaWiFi,//当前使用Wifi网络  

      ReachableViaWWAN//使用的蜂窝网络  

  } NetworkStatus;

  4、获取网络状态的代码:

你是否知道IOS获取网络的两种方法_ ios网络_wi-fi _4G _状态_移动开发_课课家

  需要注意的是HostName改成其他中国网站时经常会获取网络状态错误,有时候是不能得到正确的网络状态。所以最好使用苹果的网站,这样出错的几率也算是少的,这种方法是目前最普遍的使用方式,由于是苹果官方demo,因此是比较权威。但是这种方法的缺点是不能知道用户使用的手机网络到底是2G、3G还是4G,这也是比较缺陷的一个地方。

  再来看看第二种方法:

获取网络

  使用这种方法是通过监听手机的statusbar的状态还获取用户的网络状态,这可以是通过苹果的审核在appstore上架。这种方法是代码量非常小,简单易懂,最重要的是能区分2G、3G、4G、LTE,看到下图中的代码:

  我们需要注意的是,当使用这种方法的时候一定要保证statusbar是没有隐藏的,如果你的App是隐藏了statusbar,那么你也就不能通过这种方法获得网络状态,这是根据自己的实际情况来做出选择。

  以上是在iOS两种方法获取当前网络状态的方法,开发的时候需要注意的是,app中是否是隐藏了statusbar,总的来说,两种方法都不是特别的难,更多的是需要仔细的去研究发现。

赞(26)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程