[swift] Reachability를 사용해 특정 URL에 대한 연결 상태 체크하기
애플리케이션에서 특정 URL에 대한 연결 상태를 확인해야 하는 경우가 있습니다. 이를 위해 Reachability
라이브러리를 사용할 수 있습니다. Reachability
는 네트워크 상태를 확인하고 인터넷 연결 가능 여부를 알려주는 유용한 도구입니다.
1. Reachability
라이브러리 추가하기
먼저, Reachability
라이브러리를 프로젝트에 추가해야 합니다. CocoaPods
를 사용할 경우, Podfile
에 다음과 같이 추가합니다.
pod 'ReachabilitySwift'
별도의 의존성 관리 도구를 사용하지 않는 경우, 수동으로 Reachability
를 프로젝트에 추가해야 합니다. Reachability
의 공식 GitHub 페이지에서 다운로드할 수 있습니다.
2. Reachability 클래스를 사용해 URL 연결 상태 확인하기
import ReachabilitySwift
func checkURLStatus() {
if let reachability = Reachability() {
reachability.whenReachable = { reachability in
DispatchQueue.main.async {
if reachability.isReachableViaWiFi {
print("WiFi 연결 상태입니다.")
} else {
print("모바일 데이터 연결 상태입니다.")
}
}
}
reachability.whenUnreachable = { reachability in
DispatchQueue.main.async {
print("연결이 끊어졌습니다.")
}
}
do {
try reachability.startNotifier()
} catch {
print("Reachability를 시작할 수 없습니다.")
}
}
}
위의 코드는 Reachability
클래스를 사용하여 특정 URL에 대한 연결 상태를 확인하는 예제입니다. Reachability
의 인스턴스를 생성하고, 해당 URL이 연결 가능한지 여부를 확인할 수 있습니다. 연결 상태가 변경되면 whenReachable
또는 whenUnreachable
클로저가 호출됩니다.
이제 checkURLStatus
함수를 호출하여 특정 URL에 대한 연결 상태를 확인할 수 있습니다.