前言
在移动开发中,检测网络的连接状态尤其检测网络的类型尤为重要。本文将介绍在iOS开发中,如何使用Swift检测网络连接状态及网络类型(移动网络、Wifi)。
如何实现
Reachability.swift 是一个使用Swift写的第三方网络检测类,可以用来检测网络连接状态及网络类型(移动网络、Wifi)功能。
如何使用
- 使用Cocopod安装Reachability.swift
use_frameworks! pod 'ReachabilitySwift'
   | 
 
 
- 基本使用代码示例
 
使用前记得导入ReachabilitySwift类,下面代码放在viewDidLoad()方法中即可。
var reachability: Reachability!
  do {     reachability = try Reachability.reachabilityForInternetConnection() } catch {     print("Unable to create Reachability")     return }
  // 检测网络连接状态 if reachability.isReachable() {     print("网络连接:可用") } else {     print("网络连接:不可用") }
  // 检测网络类型 if reachability.isReachableViaWiFi() {     print("网络类型:Wifi") } else if reachability.isReachableViaWWAN() {     print("网络类型:移动网络") } else {     print("网络类型:无网络连接") }
   | 
 
- 监听网络变化  
 
// 网络可用或切换网络类型时执行 reachability.whenReachable = { reachability in
      // 判断网络状态及类型 }
  // 网络不可用时执行 reachability.whenUnreachable = { reachability in
      // 判断网络状态及类型 }
  do {     // 开始监听     try reachability.startNotifier() } catch {     print("Unable to start notifier") }
   | 
 
停止监听调用reachability.stopNotifier()即可。
项目地址
Github地址:https://github.com/ashleymills/Reachability.swift