iOS中如何检测不同Wi-Fi网络的切换状态?
问题:Wi-Fi快速切换时无法识别网络状态更新
已连接wifi-1后立即切换至wifi-2,此时无法获取网络状态更新。尝试过Reachability、Network框架,以及以下Alamofire Reachability代码、Network框架监测代码,均未解决问题。仅当切换到下一个Wi-Fi耗时较长时,偶尔能获取到状态更新。
Alamofire Reachability实现代码
NetworkReachabilityManager.default?.startListening(onUpdatePerforming: { status in switch status { case .notReachable: print("Off") DispatchQueue.main.async { self.view.backgroundColor = .red } case .unknown: print("Unknown") DispatchQueue.main.async { self.view.backgroundColor = .orange } case .reachable(let type): print("On - \(type)") DispatchQueue.main.async { self.view.backgroundColor = .green } } })
Network框架监测代码
let monitor = NWPathMonitor() monitor.start(queue: DispatchQueue.global(qos: .background)) monitor.pathUpdateHandler = { path in if path.status == .satisfied { DispatchQueue.main.async { self.view.backgroundColor = .green } }else{ DispatchQueue.main.async { self.view.backgroundColor = .red } } }
内容的提问来源于stack exchange,提问作者Jayachandra A
相关产品推荐
相关产品推荐

