【发布时间】:2019-08-06 18:06:23
【问题描述】:
我的应用基于 TableView,它使用 Alamofire 从服务器下载一些数据。因此,因为必须有互联网连接才能使用我的应用程序,所以我想不断检查它。我找到了创建此类的解决方案:
class Connectivity {
class func isConnectedToInternet() -> Bool {
return NetworkReachabilityManager()!.isReachable
}
}
我在每个方法中添加这些代码行来检查互联网连接
if !Connectivity.isConnectedToInternet() {
print("No internet connection")
} else {
print("connected")
}
它有效,但我认为这不是持续检查连接的正确方法。我认为我必须使用 appDelegate 中的 notificationCenter 来实现一些观察者,但我不知道该怎么做......
【问题讨论】:
-
实际上您应该从不检查连接性/可达性。继续前进并建立网络。如果 Internet 不存在/消失,连接将按正常顺序失败,然后您可以处理它。
-
什么意思?我需要像 instagram 一样显示“无互联网连接”标签,所以我需要检查连接性...
-
一旦失败错误告诉你没有连接,你就会这样做。不需要专门检查。
-
所以你是说我必须检查使用 Alamofire 的请求是失败还是成功?之后我必须根据情况显示标签?
-
是的,但您不必“检查”:如果您设置正确,您已经设置为每次尝试与 alamofire 对话时都会收到失败错误。跨度>
标签: swift alamofire internet-connection