我知道 Android 有一个 JSON 解析器,但我想知道是否值得使用提供更好性能的东西(如 Jackson - 请参阅http://jackson.codehaus.org/)?有人试过吗?
5 回答
从 API 11 开始,Android 中有一个流 json 解析器
迟到的答案,但它可能仍然有帮助。我使用 Jackson 从 Twitter 解析 JSON 以及持久Maps
化到数据库。杰克逊的数据映射非常棒。能够将 JSON 直接映射到一个对象是很棒的,并且让一切都变得更干净。
即使您只解析简单的回复,数据映射也可以帮助您使代码更简洁(更高效)。对我来说,我不必为每种类型的 Twitter api 函数编写解析逻辑,这真是天赐之物。
只是对这些解析器的另一种看法。我浏览了 2009 年的 Google IO,关于应用程序开发人员有效使用电池的讨论非常好。
这是该演讲的链接:链接
现在,根据谈话,android 内置的牧师是基于树的,这些在电池寿命方面应该是低效的。有没有人真正研究过这个。
通读这个讨论,杰克逊解析器似乎是所有事情的赢家。如果不超过内置的,它几乎同样快,而且它基于事件/流,而不是基于树,这在电池使用方面更好。
只是我想分享并获得一些意见。
我使用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。