You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 07:31:06