我正在使用Apple MultipeerConnectivity 框架,我可以将消息发送给与其连接的所有对等方。
我正在使用:
- (BOOL)sendData:(NSData *)data toPeers:(NSArray *)peerIDs withMode:(MCSessionSendDataMode)mode error:(NSError **)error;
我甚至可以通过NSData
转换图片来发送图片。
问题是我正在尝试将图像和文本一起发送给其他同行。我知道有三种方法可以将信息发送给其他同行:
1。 NSData
2。 Resource
3。 Stream
那么将图像和文本一起发送到哪个方法以及如何使用?
由于
答案 0 :(得分:2)
您可以将NSData用于您的任务。这是一个例子:
序列化为NSData:
NSString *string = @"Any String";
UIImage *image = [UIImage imageNamed:@"Any Image"];
NSData *imageData = UIImagePNGRepresentation(image);
NSDictionary *dictionary = @{@"string":string, @"imageData":imageData};
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:dictionary];
// Send |data| by MultipeerConnectivity
反序列化为NSString和UIImage:
// Receive |data| by MultipeerConnectivity
NSDictionary *dictionary = [NSKeyedUnarchiver unarchiveObjectWithData:data];
NSString *string = dictionary[@"string"];
NSData *imageData = dictionary[@"imageData"];
UIImage *image = [UIImage imageWithData:imageData scale:[UIScreen mainScreen].scale];