1
iPAD 3 WiFi + Cellular의 도달 가능성 (네트워크 가용성)을 확인하는 동안 아래에서 언급 한 시나리오에서 이상한 문제가 발생했습니다.WWAN에 대한 잘못된 응답 - 도달 가능성
- 네트워크 가용성을 확인하기 위해 나는 Apple sample code for reachability을 (를) 사용하셨습니다.
- 다음 코드는 WiFi 또는 WWAN의 가용성을 확인하기 위해 구현되었습니다. 아이 패드 &에서 NO SIM 없었다 시나리오에서
- (BOOL)networkCheck { Reachability *wifiReach = [Reachability reachabilityForInternetConnection]; NetworkStatus netStatus = [wifiReach currentReachabilityStatus]; switch (netStatus) { case NotReachable: { NSLog(@"%@",@"NETWORKCHECK: Not Connected"); return false; break; } case ReachableViaWiFi: { NSLog(@"%@",@"NETWORKCHECK: Connected Via WiFi"); return true; break; } case ReachableViaWWAN: { NSLog(@"%@",@"NETWORKCHECK: Connected Via WWAN"); return true; break; } } return false; }
`
`
도 노 WiFi 연결 존재하고, 상기 방법은 ReachableViaWWAN 케이스를 실행 어떤 SIM 또는 다른 WWAN 네트워크가 없기 때문에 은 완전히 잘못된입니다. 가 응답을 신뢰할 수있는 호스트 & 검사에 요청을 보내기 다음과 같이 & 제안 구현
이 문제를 해결을 극복하기 위해 (또는 내가 해킹을 말해야한다).
case ReachableViaWWAN:
{
NSLog(@"%@",@"NETWORKCHECK: Connected Via WWAN");
NSData *responseData = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"www.google.com"]] returningResponse:nil error:nil];
if (responseData != nil)
{
return true;
break;
}
else
{
return false;
break;
}
}
나는 쿼리의 몇 가지 있습니다
- 이 엉뚱한 소리로 들리 겠지만,하지만 그것은 NO SIM은 장치에 존재하지 않는 경우에도이 ReachableViaWWAN가의 하드웨어 또는 iOS에 뭔가 문제인가?
- 문제에 대해 (위에서 언급 한 해결 방법보다) 더 좋은 해결책이 있습니까?