- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个 iOS 应用程序,在某些时候我需要检查该应用程序对互联网的访问,所以我使用了 ReachabilitySwift 库。
经过一些测试,在我看来,该库仅检查设备是否连接了 wifi,而没有从我的路由器提供实际的互联网连接。
假设我断开了路由器与互联网的连接,如果我的 iOS 设备通过 wifi 连接到路由器,可达性告诉我我们有互联网连接,而实际上我的路由器没有互联网。
我尝试了与特定主机的可达性,但仍然有相同的结果
var reachability = Reachability.init(hostname: "google.com");
当 wifi 连接丢失或实际互联网连接丢失时,可达性库是否应该提供反馈?
提前谢谢你。
最佳答案
我在对受 VPN 保护的网络进行 Web 服务调用时遇到了与 Reachability 类似的问题。
var reachability = Reachability.init(hostname: "google.com");
对我不起作用,因为它在有 Wifi 连接时返回 true。
当对服务器进行虚拟调用时,我使用了 Alamofire
响应
func networkIsAvailable(available: (Bool, String?) -> Void) {
var message : String = ""
DispatchQueue.main.async {
HUD.show(.progress)
Alamofire.request(Constants.baseUrl, method: .get, parameters: ["foo": "bar"])
.responseJSON(completionHandler: { (response) in
let error = response.result.error as? NSError
if error?.localizedDescription == networkAlert {
message = networkAlert
available(false, message)
} else if error?.code == cannotConnectServerCode || error?.localizedDescription == cannotConnectServerMessage {
message = cannotConnectServerMessage
available(false, anotherNetworkAlert)
} else {
available(true, nil)
}
})
}
}
关于ios - 使用 reachabilitySwift 检查互联网连接或 wifi 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45857470/
在我的 viewDidLoad() 函数中,我调用了这个方法: //MARK: Reachability func startReachability(){ //declare this pr
我正在尝试使用 Alamofire 上传图像。另外,我正在使用 ReachabilitySwift 来了解互联网连接的状态。现在,当我尝试上传图像并在中间关闭网络时,我会删除所有 alamofire
我正在使用 Swift1.2 开发一个 iOS 应用程序,当没有网络时我的应用程序崩溃了。 所以我想检测我是否有网络。但我希望能够随时知道,我的意思是应用程序何时启动或何时从后台恢复等。对于我所看到的
在我的 Podfile 中,我有: pod 'ReachabilitySwift', '~> 3.0' 但是当我运行 pod install 时,除了 ReachabilitySwift 之外的所有框
我正在构建一个 iOS 应用程序,在某些时候我需要检查该应用程序对互联网的访问,所以我使用了 ReachabilitySwift 库。 经过一些测试,在我看来,该库仅检查设备是否连接了 wifi,而没
我已经尝试安装了: pod 'ReachabilitySwift', '~> 3' 进入我的 Podfile,但出现此错误: [!] 无法满足以下要求: ReachabilitySwift (~>
我正在使用 ReachabilitySwift cocoapods在项目中。 Pod 文件: pod 'ReachabilitySwift', '~> 2.4' 我安装了这个 pod 并导入了 Rea
我是一名优秀的程序员,十分优秀!