Casting a CFDictionaryRef to NSDictionary? Casting a CFDictionaryRef to NSDictionary? xcode xcode

Casting a CFDictionaryRef to NSDictionary?


ARC changed the way bridging works.

NSDictionary *original = [NSDictionary dictionaryWithObject:@"World" forKey:@"Hello"];CFDictionaryRef dict = (__bridge CFDictionaryRef)original;NSDictionary *andBack = (__bridge NSDictionary*)dict;NSLog(@"%@", andBack);


In ARC, this should be done this way:

CFDictionaryRef currentListingRef = ...;NSDictionary *currentListing = CFBridgingRelease(currentListingRef);

This releases the CF object and transfers ownership of the object to ARCotherwise you should release CF object manually.


Try this code,

NSDictionary *ssidList = (__bridge NSDictionary*)myDict;NSString *SSID = [ssidList valueForKey:@"SSID"];