[swift] guard 문을 사용하여 네트워크 연결 상태를 검사할 수 있나요?
다음은 네트워크 연결 상태를 검사하여 처리하는 예제를 보여드리겠습니다.
import Foundation
import SystemConfiguration
func isNetworkAvailable() -> Bool {
guard let reachability = SCNetworkReachabilityCreateWithName(nil, "www.google.com") else {
return false
}
var flags = SCNetworkReachabilityFlags()
SCNetworkReachabilityGetFlags(reachability, &flags)
let isReachable = flags.contains(.reachable)
let needsConnection = flags.contains(.connectionRequired)
return (isReachable && !needsConnection)
}
if isNetworkAvailable() {
print("네트워크에 연결되었습니다.")
} else {
print("네트워크 연결이 필요합니다.")
}
위의 예제에서는 guard
문을 사용하여 SCNetworkReachabilityCreateWithName
메서드를 통해 reachability 객체를 얻어오고, 오류가 발생하지 않는다면 해당 객체를 사용하여 네트워크 상태를 확인합니다.
더 자세한 정보는 아래 레퍼런스를 참고하시기 바랍니다.