我知道如何通过Reachability.Swift检查网络连接。我希望在视图控制器中实现一些事情,如果在视图加载后在后台进行互联网检查,我甚至知道我们可以启动一个NSTimer,以便在5分钟后检查让我们每次调用Reachability类来检查连通性。
我的问题是,还有其他可用的理论,
我见过这个图书馆 Link to Lib
但是我想知道是否有人在Swift中做到了这一点!
答案 0 :(得分:3)
Swift 2.0 - 使用可达性检查网络,NSNotification
AppDelegate.swift
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
{
NSNotificationCenter.defaultCenter().addObserver(self, selector:"checkNetworkStatus", name: ReachabilityChangedNotification, object: nil);
do{self.reachability = try Reachability.reachabilityForInternetConnection()}catch{}
do{try self.reachability.startNotifier()}catch{}
self.checkNetworkStatus()
return true
}
声明networkStatus变量
var networkStatus : Reachability.NetworkStatus!
checkNetworkStatus() Function
func checkNetworkStatus()
{
networkStatus = reachability.currentReachabilityStatus
if (networkStatus == Reachability.NetworkStatus.NotReachable)
{
print("Not Reachable")
}
else
{
print("Reachable")
}
}
OtherClass.Swift
let delegate = UIApplication.sharedApplication().delegate as! AppDelegate
if (delegate.networkStatus!=Reachability.NetworkStatus.NotReachable)
{
// Call Webservice
}
else
{
delegate.checkNetworkStatus() //Not Reachable print
}