我正在尝试使用Android解析JSON流,将所有元素作为标记放在 ActivityMap 中。
问题是数据的数量: json返回超过3300行的mysql数据库,每行有3个对象。因此,当我尝试使用异步任务获取所有数据时,系统会在一段时间后返回应用程序无响应。
有什么建议吗?
答案 0 :(得分:0)
也许你可以使用Service
。您可以在here
服务主要用于大数据传输,也是常规方法,例如每2小时连接服务器。在后台和用户上工作的服务无法看到,因为服务不包括仅在背景上工作的布局。你可以在工作结束时将你的服务设置为自我毁灭。只需触发你的Service
,连接你的流并处理你的大回应。当完成自我毁灭你的服务。
答案 1 :(得分:0)
我认为您应该在不在应用程序活动中的服务中进行解析。
此外,您可以分别调用较小的调用,例如在单独的AsyncTask中获取每1000行,但它在性能方面不是更好的解决方案,我认为更好的方法是使用服务或加载器而不是传统的AsyncTask这种方式与它自己的活动有很大关系。
同时检查服务器端超时配置,可能是服务器端超时。
答案 2 :(得分:-1)