2011-04-28 5 views

답변

9

다음은 동기적인 예입니다. 이 작업은 비동기식으로 수행하는 것이 좋지만 빠른 점검을 위해이 작업이 완료 될 것입니다. // 접두사 등 :이 그냥 호스트 이름 것을 기억해야 reachabilityWithHostName를 사용하는 경우

Reachability *netReach = [Reachability reachabilityWithHostName:@"host.name"]; 
//return [netReach currentReachabilityStatus]; 
NetworkStatus netStatus = [netReach currentReachabilityStatus]; 
if (netStatus==ReachableViaWiFi) { 
    [ViewManager showStatus:@"Reachable (WiFi)!"]; 
} else if(netStatus==ReachableViaWWAN) { 
    [ViewManager showStatus:@"Reachable (WWAN)!"]; 
} else { 
    [ViewManager showStatus:@"Not reachable, aww :-("]; 
} 

, 어떤 HTTP이 없어야합니다.

+0

호스트 이름은 abc.com을 의미합니다. 맞습니까? – dks1725

+0

맞습니다. –

+0

그래, 고마워. – dks1725

0

Apple (Reachability) 코드를 통해 서버의 연결 가능성을 확인하려면 다음과 같이 유틸리티 메소드를 둘러보아야합니다.

+ (Reachability*) reachabilityWithHostName: (NSString*) hostName; 

하지만 내 생각에 나는 같은 인스턴스 내에서 (도달 원하는 호스트를 확인 후 인터넷 연결 3G/경계/와이파이을 확인하고) 먼저 다른 요인의 조합에 대한 접근 가능성을 확인합니다. 내 시나리오의 업데이트 도달 가능성 방법 안의 안전한 확인 중 하나. ' kReachibility_ping_uri'는 일정

else if (((netStatus == ReachableViaWiFi) || (netStatus == ReachableViaWWAN)) && connectionRequired == YES) 
{ 
     isInternetConAvailable = ([[NSURLConnection alloc] initWithRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:kReachibility_ping_uri] 
                  cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:20.0] delegate:self]) ? YES : NO; 
} 

은, 도달 가능성 클래스는 통지 'kReachabilityChangedNotification'를 게시 할 예정입니다 호스트 이름을 포함 할 때마다 당신은 모든을 수행했습니다 동시에 아이폰 클라이언트에 도달 변화 도달 가능성 검사 및 도달 가능성 상태 업데이트.

예가 필요한 경우 내 앱에서 어떻게 사용 했습니까? 코드를 제공 할 것이라고 알려주세요.

관련 문제