使用NSKeyedArchiver和NSData通过蓝牙发送UIImage

Ron*_*ear 1 iphone nskeyedarchiver nsdata

我想知道是否有可能在使用NSKeyedArchiver将其编码为NSMutableData之后通过蓝牙发送UIImage.这就是我的想法:

NSMutableData *data = [[NSMutableData alloc] init];

NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:[UIImage imageNamed:"test.png" forKey:kImageKey];

[archiver finishEncoding];
Run Code Online (Sandbox Code Playgroud)

Ste*_*ntz 5

您无法存档UIImage此类实例.您必须首先创建外部表示,如PNG或JPG.你可以用例如UIImagePNGRepresentation()函数来做到这一点.它将返回NSData包含PNG格式的压缩图像的实例.该NSData实例可以与NSArchiving一起使用.