Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 3 years ago.
I found a reachibility code online, unfortunately it only works for the wifi Network. I Need a code to determine if a person has an internet connection: this includes wifi and data. Any help is greatly appreciated!
You can use the Reachability framework. Install it through CocoaPods
with pod 'ReachabilitySwift', '~> 3'
.
To use it:
Declare a global variable:
var reachability = Reachability()!
Add an observer and start the notifier in your 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")
}
}
Add a function to detect changes in the network:
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
}
}
}