在手机之间发送 NSDictionary

Posted

技术标签:

【中文标题】在手机之间发送 NSDictionary【英文标题】:Sending NSDictionary between phones 【发布时间】:2010-01-06 00:23:47 【问题描述】:

我有一个应用程序,用户在其中创建存储在 NSMutableDictionary 中的设置。我必须将其发送到服务器,以便稍后由收件人检索。

我可以序列化字典,并将其发送到服务器。我的问题是,如果我将其作为 NSData 发送,将其存储在我的 postgresql 数据库中的 blob 字段中,然后在请求时将其发送回来,是否像使用 [NSDictionary initWithContentsOfURL] 一样简单?在服务器端我需要担心什么吗? http头发送和接收?

如果我将它作为 NSDictionary -> serializedData -> xml 发送,以便 iPhone 以外的其他设备可以使用它,是否有一种简单的方法可以从 xml 重新创建 NSDictionary,或者我应该存储 xml 和数据,然后发送请求的那个?

【问题讨论】:

【参考方案1】:

为了安全起见,我将其序列化为文本 plist。这是一种 xml 格式,因此它应该可以在任何地方使用,但也可以通过一次调用转换回 NSDictionary。

使用 -[NSPropertyListSerialization dataFromPropertyList:format:errorDescription:],格式为 NSPropertyListXMLFormat_v1_0。

【讨论】:

是的,效果很好。单个调用是 + (id)propertyListFromData:(NSData *)data mutabilityOption:(NSPropertyListMutabilityOptions)opt format:(NSPropertyListFormat *)format errorDescription:(NSString **)errorString 感兴趣的人。

以上是关于在手机之间发送 NSDictionary的主要内容,如果未能解决你的问题,请参考以下文章

通过WiFi在Android手机之间流式传输语音

android audio - 计算两个设备之间的距离

Hololens v2 与 Android 智能手机之间的通信

Android和iOS手机之间的自动蓝牙连接

Android 应用程序:在手机之间共享简单数据

如何让手机APP接收蓝牙模块发送的数据并显示出来