[swift] 네트워크 연결 상태를 확인하는 방법
앱이 사용자의 네트워크 연결 상태에 따라 다른 동작을 수행해야 할 때가 많습니다. 이러한 경우에는 사용자의 네트워크 연결 상태를 확인하는 방법을 알아야 합니다. Swift에서는 Reachability 라이브러리를 사용하여 네트워크 연결 상태를 확인할 수 있습니다.
Reachability 라이브러리 설치
Reachability 라이브러리를 사용하기 위해서는 먼저 프로젝트에 해당 라이브러리를 추가해야 합니다. 다음의 단계를 따라 진행해주세요.
- CocoaPods를 사용하는 경우,
Podfile
에 다음의 라인을 추가합니다:
pod 'ReachabilitySwift'
- CocoaPods를 사용하지 않는 경우, ReachabilitySwift의 GitHub 저장소에서 프로젝트를 다운로드하고 프로젝트에 직접 추가합니다.
네트워크 연결 상태 확인하기
Reachability 라이브러리를 사용하여 네트워크 연결 상태를 확인하는 방법은 다음과 같습니다.
import Reachability
func checkNetworkConnectivity() {
let reachability = try! Reachability()
reachability.whenReachable = { reachability in
// 네트워크에 연결되어 있을 때 동작할 코드 작성
print("네트워크에 연결되었습니다.")
}
reachability.whenUnreachable = { _ in
// 네트워크에 연결되어 있지 않을 때 동작할 코드 작성
print("네트워크에 연결되어 있지 않습니다.")
}
do {
try reachability.startNotifier()
} catch {
// Reachability를 시작할 수 없는 경우 예외 처리 코드 작성
print("Reachability를 시작할 수 없습니다.")
}
}
위의 코드에서는 Reachability 객체를 생성한 후, whenReachable
클로저와 whenUnreachable
클로저를 추가합니다. whenReachable
클로저는 네트워크에 연결되어 있는 경우 동작할 코드를 작성하고, whenUnreachable
클로저는 네트워크에 연결되어 있지 않은 경우 동작할 코드를 작성합니다.
startNotifier()
를 호출하여 Reachability를 시작하고, 네트워크 연결 상태가 변경될 때마다 해당 클로저가 호출됩니다.