iOS 12 이상부터는 NWNetworkMonitor
라는 내부 라이브러리를 통해서 현재 인터넷 상태 변경에 대한 감지를 할 수 있도록 제공해준다.
https://developer.apple.com/documentation/network/nwpathmonitor/
사용하기 위해선 클래스를 초기화해준다
import Network
let networkMonitor = NWPathMonitor()
networkMonitor.start(queue: DispatchQueue.global())
를 시작해주면 그때부터 네트워크 변경 사항에 대한 체크를 시작한다.
networkMonitor.start(queue: DispatchQueue.global())
networkMonitor.pathUpdateHandler = { path in }
로 변경사항에 대한 알림을 받을 수 있다.
위에서 path의 상태는
case unsatisfied
case satisfied
case requiresConnection
3가지가 있다
https://developer.apple.com/documentation/network/nwpath/status
networkMonitor.cancel()