9

我知道 Android 有一个 JSON 解析器,但我想知道是否值得使用提供更好性能的东西(如 Jackson - 请参阅http://jackson.codehaus.org/)?有人试过吗?

4

5 回答 5

7

好吧,这里有几个链接比较 Jackson JSON 与现有 JSON、SAX 和协议缓冲区的性能。根据作者的说法,Jackson 比 SAX 或内置 JSON 更快,并且与 Protocol Buffers 差不多。最后一部分听起来有点可疑,但无论如何,杰克逊似乎确实可以在 Android 上运行,并且可能值得进行一些实验。

不过,我还没有检查 JAR 的大小。如果它很大,除非您渴望获得额外的 JSON 性能,否则可能不值得花费空间。

于 2010-03-23T20:06:04.243 回答
6

从 API 11 开始,Android 中有一个流 json 解析器

于 2012-09-01T10:08:43.307 回答
4

迟到的答案,但它可能仍然有帮助。我使用 Jackson 从 Twitter 解析 JSON 以及持久Maps化到数据库。杰克逊的数据映射非常棒。能够将 JSON 直接映射到一个对象是很棒的,并且让一切都变得更干净。

即使您只解析简单的回复,数据映射也可以帮助您使代码更简洁(更高效)。对我来说,我不必为每种类型的 Twitter api 函数编写解析逻辑,这真是天赐之物。

于 2010-03-27T15:14:49.350 回答
0

只是对这些解析器的另一种看法。我浏览了 2009 年的 Google IO,关于应用程序开发人员有效使用电池的讨论非常好。

这是该演讲的链接:链接

现在,根据谈话,android 内置的牧师是基于树的,这些在电池寿命方面应该是低效的。有没有人真正研究过这个。

通读这个讨论,杰克逊解析器似乎是所有事情的赢家。如果不超过内置的,它几乎同样快,而且它基于事件/流,而不是基于树,这在电池使用方面更好。

只是我想分享并获得一些意见。

于 2011-06-03T05:03:05.623 回答
0

我使用jackson json来实现我的android应用程序,它通过json-rpc与服务器通信。我想用它来序列化/反序列化 json-rpc 请求和响应以及对象以传输数据。我使用 2.0 版的 Jackson-json。我在构建路径中放入了两个 jar:jackson-databind-2.0.0.jar、jackson-core-2.0.0.jar 和 jackson-annotations-2.0.0.jar。

附注:android.xml 是否有任何 json-rpc 实现。单独的 json-rpc 和 http 流量会很好。我用谷歌搜索了很多,但还没有找到好的 json-rpc 生成器、json 序列化器/解串器,对于传输,我将使用 android-query。

于 2012-04-06T09:35:06.517 回答