2011-02-15 39 views
2

目前我正在计划一个客户端应用程序的iPhone应用程序,该应用程序应该能够与服务器交换数据,并为其开发服务器应用程序。使用plist作为交换格式

有问题的数据可以与联系人数据进行比较,在大多数平台上,xml可能是可选的交换格式。 iOS仅通过第三方库支持(舒适的)xml编写,这就是为什么我在考虑使用plist作为交换格式。与字典的联系会让我觉得很容易。

但是,也会考虑针对非iOS/mac平台的未来版本,因此我需要知道plists是否可以在其他平台上轻松阅读。

所以,我的问题是:

  • 是plist中是一个苹果格式只能或者是他们共同到多个平台?
  • if apple exclusive:是否有允许在其他平台上轻松阅读plists的库,例如iOS的xml库?

非常感谢,伙计们!

+0

二进制plist这是反序列化在iOS上最快的格式。 – gerry3 2011-02-15 11:23:52

回答

0

Plist是Apple的东西。我确信有解析器是为其他设备编写的,但不是像iPhone一样本地编写的。就我个人而言,我喜欢JSON在不同平台之间发送便携式数据。

JSON解析器为iPhone: http://code.google.com/p/json-framework/

0

据我所知.plist是xml文件... 只是尝试重新命名一个带有.xml扩展名的iPhone项目中的info.plist文件,并在textEdit或其他xml编辑器中打开它(或者只是打开。不重命名它plist文件)... 中的.plist文件的第一行是:

<?xml version="1.0" encoding="UTF-8"?> 

...所以,只是在Xcode编辑的.plist文件,并最终将其重命名为其他平台...

0

然而,将考虑针对非iOS/mac平台的未来版本也需要考虑,所以我需要kn无论plists是否可以在其他平台上轻松阅读。

我的建议是只使用JSON或XML。您可以为其他平台(使用Apple的Darwin开源项目及其plutil应用程序启动代码)编写二进制plist阅读器,但各种平台上的二进制格式会引入它们自己的问题(大vs小序列等)。

此外,许多服务器 - 客户端数据交换框架已经使用JSON和XML作为中间数据格式。这些现有标准可能会使您和您的客户更轻松地进行更新和功能增强。