在Android上优化JSON解析

我正在为
Android开发一个需要从JSON提要中获取大量数据的应用程序.这个feed是一个单行JSON文件,加权大约400 ko,包含大约10个我需要获得的数组.

我正在使用Android的JSON库这样做,输出效果很好,但需要很长时间(约30秒)才能计算.下载步骤很快完成,即创建似乎很长的JSON对象.这是我的步骤(删除try / catch块等).

JSONObject feed = new JSONObject(big_string_from_feed);

JSONArray firstArray = feed.getJSONArray("key1");
JSONArray secondArray = feed.getJSONArray("key2");

[…]

在我浏览完所有数组后,按以下方式获取每个元素:

for (int currentIndex =0;currentIndex<firstArray.length();currentIndex++){
    JSONObject myObject = firstArray.getJSONObject(currentIndex);
    [....]
}

我这样做的方式有问题吗?有没有更好的方法呢?

非常感谢你提前.

最佳答案 如果表现是一个问题,请使用杰克逊.有关性能结果,请参见
https://github.com/eishay/jvm-serializers/wiki. (这些结果应该很快更新,包括Jackson手册/树字符串处理,它将在Jackson手册和Jackson数据绑定字符串处理之间具有某种性能.手动/树字符串处理是原始问题中演示的方法.)

点赞