저는 성공적으로 AsiHttpRequest 라이브러리를 사용하여 내 응용 프로그램에서 URL 연결을 만듭니다. 그러나, 나는 약간의 오차가보고 iOS5를하고 Reachability.m 파일로 업그레이드 (4) 다음과 같은 기능에 :iOS5에서 asiHttpRequest
static void ReachabilityCallback(SCNetworkReachabilityRef target, SCNetworkReachabilityFlags flags, void* info) {
#pragma unused (target, flags)
NSCAssert(info, @"info was NULL in ReachabilityCallback");
NSCAssert([(NSObject*) info isKindOfClass: [Reachability class]], @"info was the wrong class in ReachabilityCallback");
// Post a notification to notify the client that the network reachability changed.
[[NSNotificationCenter defaultCenter] postNotificationName: kReachabilityChangedNotification object: (Reachability *) info];
} // ReachabilityCallback()
- (BOOL) startNotifier {
SCNetworkReachabilityContext context = {0, self, NULL, NULL, NULL};
if(SCNetworkReachabilitySetCallback(reachabilityRef, ReachabilityCallback, &context)) {
if(SCNetworkReachabilityScheduleWithRunLoop(reachabilityRef, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode)) {
return YES;
}
}
return NO;
} // startNotifier
1SR 오류 : NSCAssert 라인에서, "C 포인터 타입 캐스트 '무효'목표 - C 포인터 NSObject 유형은 브릿지 된 캐스트가 필요합니다. " 왜 그런 일이 일어나고 어떻게 해결할 수 있습니까?
답변 : 각 파일에 대해 ARC를 사용 중지 할 수 있습니다. 프로젝트의 설정을 빌드하고 모든 ASIHTTPRequest 파일에서 -fno-objc-arc 플래그를 설정하십시오 (텍스트 편집을 위해 더블 클릭). 그런 다음 ASIAuthenticationDialog와 여전히 오류를 생성하는 참조를 제거해야합니다. 그것은 나를 위해 작동합니다.
내 대답은 비슷한 문제를 가진 사람들을 돕기 위해 집중된다
어쨌든,이처럼 내 Reachability.m에서 그 선이 보일 것입니다. -1이라면 최소한 이유를 설명하십시오. 감사합니다 – Jaume