2010-11-05 58 views
0

我试图使用如何使用GameKit蓝牙将NSDictionary(或plist文件)作为NSData发送?

[currentSession sendDataToAllPeers:data withDataMode:GKSendDataReliable error:nil]; 

从1台设备发送包含数据一个NSDictionary(或plist文件)到另一个,并且

- (void)receiveData:(NSData *)data fromPeer:(NSString *)peer inSession:(GKSession *)session context:(void *)context 

接收它。我怎样才能转换到和从NSData这发生?

回答

4

您可以使用以下到PList转化为NSData的:

+ (NSData *)dataWithPropertyList:(id)plist 
          format:(NSPropertyListFormat)format 
         options:(NSPropertyListWriteOptions)opt 
          error:(NSError **)error 

而这款以NSData的变换到PList:

NSPropertyListSerialization
+ (id)propertyListWithData:(NSData *)data 
        options:(NSPropertyListReadOptions)opt 
        format:(NSPropertyListFormat *)format 
        error:(NSError **)error 

format可能是NSPropertyListBinaryFormat_v1_0使用最低字节数