在 Swift 中使用可达性类

Posted

技术标签:

【中文标题】在 Swift 中使用可达性类【英文标题】:Using Reachability Class in Swift 【发布时间】:2015-06-06 18:15:37 【问题描述】:

我在 Swift 中遇到了可达性类的问题,我正在使用以下代码使其工作,但似乎有问题..

import Foundation

class NetworkConnect 

    static let sharedInstance = NetworkConnect()

    private init() 
    

    func connected() -> Bool 
        var reachability : Reachability = Reachability.reachabilityForInternetConnection()
        var networkStatus : NetworkStatus = reachability.currentReachabilityStatus
        if networkStatus.value == NotReachable.value  
            return false
         else 
            return true
        
    
    

我收到此错误:

'Reachability.NetworkStatus' is not convertible to 'NetworkStatus'

我该如何解决这个问题?

【问题讨论】:

已经提出了类似的问题并给出了答案 [***.com/questions/25928826/… [1]: ***.com/questions/25928826/… 【参考方案1】:

我个人建议您使用tonymillion 的替代Reachability 类,可以在这里找到:

https://github.com/tonymillion/Reachability

那么就可以确定1行的连接了:

let connected: Bool = Reachability.reachabilityForInternetConnection().isReachable()

如果您以前从未尝试过,我还建议您通过CocoaPods 安装它。原因是谷歌将通过 CocoaPods 分发他们所有未来的 ios SDK,所以你现在可能已经开始练习了 :)

【讨论】:

以上是关于在 Swift 中使用可达性类的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 5 中使用可达性 [重复]

使用 SWIFT 检查 IP 地址可达性

Xcode 8 e Swift 3 中的可达性错误

Swift 3 通过可达性检查互联网连接

swift 3(xCode8-beta6)上的可达性问题

Swift 中的 AFNetworking 可达性管理器