Android JSON库的性能和可用性比较

Kur*_*aum 32 java android json

在android上解析JSON的最佳库是什么?我知道Android框架内置了一个JSON库,我听说过GSON.但我想知道是否有人比较了Android上的各种JSON选项,并提出了选择其中一个的理由.我认为性能和可用性是主要标准.

Pro*_*uce 40

虽然有一些Java-to-from-JSON API提供了JSON和任意Java数据结构之间的简单(基本)绑定,但Jackson和Gson是迄今为止最复杂(功能强大)和功能丰富的选项.

早在七月(2011年),我在我的博客上发布了一个多部分系列,比较使用Gson和Jackson,逐步介绍Gson用户指南中的功能,包括Jackson中可比较实现的示例(以及Gson中的实现, Gson用户指南不完整或损坏的地方).

本系列的第六部分提供了易于比较的导航链接,以及摘要比较列表. http://programmerbruce.blogspot.com/2011/07/gson-v-jackson-part-6.html

这是使用Gson与Jackson对已知的常见JSON到/ Java任务进行最全面的比较.

如上所述,各种Java-to/from-JSON API的性能比较可在https://github.com/eishay/jvm-serializers/wiki上找到.Gson(2.0)的当前版本显示比当前版本的Jackson(1.9.2)在串行化和反序列化500字节JSON结构时要慢16倍,使用非常类似的实现工作(只需一行或两行代码) .

Martin Adamek在http://martinadamek.com/2011/01/31/comparison-of-json-parsers-performance-on-android/http://martinadamek.com/上发布了Android上运行的各种API的一些性能结果.2011/02/04/JSON的解析器,性能上的Android与-热身-和多迭代/

  • 不要忘记考虑库大小.Gson约为200kb,而Jackson的3个依赖关系将约为1mb.如果您不需要超强的性能,我建议Gson的简单性和库大小. (2认同)

kab*_*uko 9

GSON使用起来非常简单,如果性能不是问题,那就非常好了.杰克逊多少,要快得多,但并是不是真的那么更多的努力来使用.正如我过去在另一个相关的SO问题中所说的那样,通过简单地从GSON切换到Jackson,我获得了巨大的性能提升(当使用大型JSON时).