代码在 SCNetworkReachabilityCreateWithAddress 崩溃

use*_*902 6 ios swift

我的代码在下面显示的函数中崩溃了。该功能用于检查我是否可以访问互联网。我想知道崩溃意味着什么以及如何防止它?

func connectionStatus() -> ReachabilityStatus {
    var zeroAddress = sockaddr_in()
    zeroAddress.sin_len = UInt8(sizeofValue(zeroAddress))
    zeroAddress.sin_family = sa_family_t(AF_INET)

    guard let defaultRouteReachability = withUnsafePointer(&zeroAddress, {
        SCNetworkReachabilityCreateWithAddress(nil, UnsafePointer($0))
    }) else {
        return .Unknown
    }

    var flags : SCNetworkReachabilityFlags = []
    if !SCNetworkReachabilityGetFlags(defaultRouteReachability, &flags) {
        return .Unknown
    }

    return ReachabilityStatus(reachabilityFlags: flags)
}
Run Code Online (Sandbox Code Playgroud)

连接状态