I was trying to send a UIImage over a simple socket that only accepts CFString for passing data.
I tried converting the UIImage into NSData into NSString into CFString and back, but the final UIImage is always nil.
Conversion:
NSData *dataImage = UIImagePNGRepresentation(image);
NSString *stringImage = [dataImage base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
Reconversion:
NSString *string = (__bridge NSString *)(object);
NSData *imageData = [[NSData alloc] initWithBase64EncodedString:string options:0];
UIImage *image = [UIImage imageWithData:imageData];