我需要使用 MultipeerConnectivity
将图像和一些字符串数组发送到另一台设备。在接收端,API是func session(session: MCSession, didReceiveData data: NSData, fromPeer peerID: MCPeerID)
,它只接收NSData
数据。但我需要发送这样的东西:
struct data{
var imageData:NSData?
var location:[String:String]?
var information:[String]?
var sliderInfo:[String]?
var questionsAndAnswer:[String:String]?
var secrets: String?
var tempts: Int?
}
dataStructure 内部有许多不同的值类型,但是如何将此自定义数据结构转换为 NSData
,然后在接收器端对其进行解码?我在这个项目中使用 Swift。
最佳答案
如果你把它做成一个采用 NSCoding 的 NSObject 子类,你会过得更轻松。 NSCoding 和 NSKeyedArchiver 是将任意数据序列化为 NSData 并稍后检索任意数据的方式。
关于ios - 如何将这几种不同的值类型组合到 NSData 中呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38557819/