예를 들어 앱이 SCNetworkReachability
위해 kSCNetworkReachabilityFlagsIsWWAN
Wi-Fi를 사용할 수 있을 때 모니터링하기 위해 셀룰러 폴백에서 올바르게 작동하지 않을 수 있습니다.
앱이 이 방법을 사용한 다음 연결을 시도하면 Wi-Fi를 통해 연결될 것이라고 생각하고 앱이 실수로 셀룰러 네트워크를 통한 연결로 끝날 수 있습니다. 의 부족 kSCNetworkReachabilityFlagsIsWWAN
연결이 셀룰러를 통해 이동하지 않는다는 보장은 없습니다. 코드에서 연결이 셀룰러를 거치지 않도록 해야 하는 경우 네트워킹 요청을 할 때 이를 지정해야 합니다.
대신에 씨에프네트워크
코드 사용 CFSocket스트림
, CFHTTP스트림
, 또는 유사한 API를 사용하여 kCFStreamPropertyNoCellular
연결하기 전에 CF 개체에서 속성을 true로 설정합니다.
을위한 NSURL요청
, 전화 [setAllowsCellularAccess 요청: false]
.
셀룰러 폴백으로 인해 코드가 셀룰러를 통해 연결되지 않도록 하는 것 외에도 이 호출은 코드가 VPN 또는 복잡한 라우팅 문제로 인해 셀룰러를 통해 연결됨(Wi-Fi를 통해 IPv4만 사용할 수 있으므로 셀룰러를 통해 IPv6에 연결, 등.).
앱이 제대로 작동하는지 확인하려면 끊어진 Wi-Fi 네트워크에 대해 테스트해야 합니다. 끊어진 Wi-Fi 네트워크를 설정하는 가장 쉬운 방법은 Apple AirPort 베이스 스테이션 또는 기타 Wi-Fi 액세스 포인트는 DHCP 주소를 전달하고 액세스 포인트는 인터넷. 또 다른 간단한 테스트 방법은 케이블이나 DLS 모뎀에서 케이블이나 DSL 라인의 플러그를 뽑는 것입니다.