在Android上解析/管理庞大的JSON文件(~19MB)的最佳实践

时间:2012-03-29 08:19:49

标签: android json file parsing gson

我的Android应用程序中有一个巨大的JSON文件要解析。 我想它解析得太大了,可能记忆力还不够。我通常用GSON lib解析一个小文件。

有最好的做法吗?或者,你是否建议采用一些方法来解决这个问题?

任何建议都表示赞赏。

3 个答案:

答案 0 :(得分:4)

你肯定需要使用像JsonReader这样的流解析器。它可以在Gson(link)和Android 3.0+(link)中使用。您应该积极使用skipValue(),因为这样可以避免分配您不会使用的对象。

答案 1 :(得分:1)

如果您使用Jackson,请确保使用流式API而不是数据绑定API,然后请尽量使用skipChildren()。可以使用流式API的示例here

答案 2 :(得分:0)

对于解析GSON很好,通过制作POJO,您可以将JSON对象解析为直接Java对象。对于冗长的文件,你必须在一个单独的线程中执行此操作,即除了UI线程之外。为此,您可以使用AsyncTask实用程序来管理线程。以下是完全的参考

http://developer.android.com/reference/android/os/AsyncTask.html