可达性问题ios6

时间:2013-02-18 07:31:11

标签: iphone ios6

在应用程序中显示ios6中的可达性错误。任何人都可以帮我解决可达性ios6中的这个错误,需要做的事情。

@implementation Reachability
 static void ReachabilityCallback(SCNetworkReachabilityRef target, SCNetworkReachabilityFlags flags, void* info)
 {
#pragma unused (target, flags)
NSCAssert(info != NULL, @"info was NULL in ReachabilityCallback");
NSCAssert([(NSObject*) info isKindOfClass: [Reachability class]], @"info was wrong class in ReachabilityCall9back");

//We're on the main RunLoop, so an NSAutoreleasePool is not necessary, but is added defensively
// in case someon uses the Reachablity object in a different thread.


Reachability* noteObject = (Reachability*) info;
// Post a notification to notify the client that the network reachability changed.
[[NSNotificationCenter defaultCenter] postNotificationName: kReachabilityChangedNotification object: noteObject];


  }

 - (BOOL) startNotifier
 {
BOOL retVal = NO;
SCNetworkReachabilityContext    context = {0, self, NULL, NULL, NULL};
if(SCNetworkReachabilitySetCallback(reachabilityRef, ReachabilityCallback, &context))
{
    if(SCNetworkReachabilityScheduleWithRunLoop(reachabilityRef, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode))
    {
        retVal = YES;
    }
}
return retVal;
  }

错误:

 Cast of C pointer type 'void *' to Objective-C pointer type 'NSObject *' requires a bridged cast

1 个答案:

答案 0 :(得分:5)

id objInfo = (__bridge id)info;
NSCAssert([objInfo isKindOfClass: [Reachability class]], @"info was wrong class in ReachabilityCall9back");
Reachability* noteObject = (Reachability*) objInfo ;