2014-06-17 3 views
0

제목에 따라 iPhone에서 Wi-Fi를 끄고 LTE 연결을 가지고 있지만 Reachability : currentReachabilityStatus를 호출하면 ReachableViaWifi가 반환됩니다. 코드 :Reachability : currentReachabilityStatus는 Wi-Fi가 꺼져있을 때 ReachableViaWifi를 반환합니다.

in the init: 
     [[NSNotificationCenter defaultCenter] addObserver:self 
               selector:@selector(reachabilityChange:) 
                name:kReachabilityChangedNotification 
                object:nil]; 

     _reachability = [Reachability reachabilityWithHostName:[[MYURLs defaultServerBaseURL] host]]; 
     [_reachability startNotifier]; 
     NetworkStatus status = [_reachability currentReachabilityStatus]; 
     // here status is NotReachable 
     .... 


- (void) reachabilityChange: (NSNotification*) notification 
{ 
    NetworkStatus status = [self.reachability currentReachabilityStatus]; 
    // here status is ReachableViaWifi 
} 

Wi-Fi가 사용 중지 된 경우 왜 상태가 ReachableViaWifi입니까?

코드를 실행하기 전에 wifi를 끄고 있습니다.

답변

0

같은 코드가 iOS7에서 예상되는 결과를 생성하므로 iOS8 Beta의 버그입니다.

+0

원래 질문은이 베타 버전을 사용하여 발생한 지정하지 않은보고합니다. – quellish

+0

10.3.3 알파에서 동일한 현상이 발생합니다. –

0

reachabilityChange:에서 [self.reachability currentReachabilityStatus]을 호출하는 대신 알림 개체를 확인하십시오.

- (void) reachabilityChange: (NSNotification*) notification { 
    Reachability *reach = [notification object]; 
    NetworkStatus status = [reach currentReachabilityStatus]; 
} 
+0

정확하게 코드를 퍼팅 여전히 실행은 ReachableViaWifi – Gruntcakes

0

방금이 동일한 문제가 발생했습니다. Apple의 최신 Reachability 수업을 받아 들여 해결했습니다.

Reachability