Swift错误的连接检测

时间:2015-12-08 23:54:34

标签: swift error-handling connection reachability

我有一个解析网址的Swift应用。一切正常,我使用可达性在连接关闭时显示警报视图。问题是当连接打开但是非常糟糕或丢失时。当我启动我的应用程序时它崩溃,因为无法加载网址。有一种简单的方法可以避免这种情况吗?一个警报,知道你的连接非常糟糕,并防止应用程序崩溃? 代码是这样的:

public class Reachability {
class func isConnectedToNetwork() -> Bool {
    var zeroAddress = sockaddr_in()
    zeroAddress.sin_len = UInt8(sizeofValue(zeroAddress))
    zeroAddress.sin_family = sa_family_t(AF_INET)
    let defaultRouteReachability = withUnsafePointer(&zeroAddress) {
        SCNetworkReachabilityCreateWithAddress(nil, UnsafePointer($0))
    }
    var flags = SCNetworkReachabilityFlags()
    if !SCNetworkReachabilityGetFlags(defaultRouteReachability!, &flags) {
        return false
    }
    let isReachable = (flags.rawValue & UInt32(kSCNetworkFlagsReachable)) != 0
    let needsConnection = (flags.rawValue & UInt32(kSCNetworkFlagsConnectionRequired)) != 0
    return (isReachable && !needsConnection)
}}

没有崩溃日志(当我在100%丢失配置文件上设置网络链路调节器时,仅在iphone上发生)。我需要一个连接句柄错误,知道用户互联网连接何时变坏。提前感谢您的帮助。

0 个答案:

没有答案