找出是否有互联网,包括无线或数据(Swift 3)

我在网上find了一个可达性代码,不幸的是它只适用于无线networking。 我需要一个代码来确定一个人是否有互联网连接:这包括WiFi和数据。 任何帮助是极大的赞赏!

你可以使用Reachability框架。 通过CocoaPods pod 'ReachabilitySwift', '~> 3'通过CocoaPods安装。

要使用它:
声明一个全局variables:

 var reachability = Reachability()! 

添加一个观察者,并在viewWillAppear启动通知器:

 override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(true) NotificationCenter.default.addObserver(self, selector: #selector(self.reachabilityChanged),name: ReachabilityChangedNotification,object: reachability) do{ try reachability.startNotifier() }catch{ print("could not start reachability notifier") } } 

添加一个函数来检测networking中的变化:

 func reachabilityChanged(note: NSNotification) { reachability = note.object as! Reachability if !reachability.isReachable { // Network not reachable } else{ if reachability.isReachableViaWiFi { // Reachable via WiFi } else { // Reachable via Cellular } } }