Android:如何解析BIG JSON流

时间:2016-02-26 16:14:58

标签: android json

我正在尝试使用Android解析JSON流,将所有元素作为标记放在 ActivityMap 中。

问题是数据的数量: json返回超过3300行的mysql数据库,每行有3个对象。因此,当我尝试使用异步任务获取所有数据时,系统会在一段时间后返回应用程序无响应。

有什么建议吗?

3 个答案:

答案 0 :(得分:0)

也许你可以使用Service。您可以在here

中找到教程

服务主要用于大数据传输,也是常规方法,例如每2小时连接服务器。在后台和用户上工作的服务无法看到,因为服务不包括仅在背景上工作的布局。你可以在工作结束时将你的服务设置为自我毁灭。只需触发你的Service,连接你的流并处理你的大回应。当完成自我毁灭你的服务。

答案 1 :(得分:0)

我认为您应该在不在应用程序活动中的服务中进行解析。

此外,您可以分别调用较小的调用,例如在单独的AsyncTask中获取每1000行,但它在性能方面不是更好的解决方案,我认为更好的方法是使用服务或加载器而不是传统的AsyncTask这种方式与它自己的活动有很大关系。

装载机:loaders-and-loadermanager

服务:android_services

同时检查服务器端超时配置,可能是服务器端超时。

答案 2 :(得分:-1)

如果你有json数据和相应的Model类,并且你想将json数据映射到Model类,我建议使用Gson()库。它会将您的json数据解析为您的java类。在gradle依赖项中包含以下行,以包含Gson()库。

compile 'com.google.code.gson:gson:2.3'

查看以下链接,这些链接可让您进一步了解如何使用此库。

Link1Link2