AutorÃa | Ultima modificación | Ver Log |
//// NetworkMonitor.swift// twogetskills//// Created by Efrain Yanez Recanatini on 6/12/22.//import Networkimport SwiftUI// An enum to handle the network statusenum NetworkStatus: String {case connectedcase disconnected}class NetworkMonitor: ObservableObject {private let monitor = NWPathMonitor()private let queue = DispatchQueue(label: "Monitor")@Published var status : NetworkStatus = .connectedinit() {monitor.pathUpdateHandler = { [weak self] path inguard let self = self else { return }// Monitor runs on a background thread so we need to publish// on the main threadDispatchQueue.main.async {if path.status == .satisfied {self.status = .connected} else {self.status = .disconnected}}}monitor.start(queue: queue)}}