我创建了一个应用程序,我使用SAX解析器从服务器解析数据。我跟着this link
它工作正常,但花了很多时间。我需要减少解析东西的时间。 任何专业提示?
答案 0 :(得分:2)
明显的提示是:分析您的代码并确定时间的去向。也许你正在做很多处理一些SAX事件的工作。也许花时间去做与解析完全无关的事情。在你描述之前你无法分辨。
答案 1 :(得分:2)
像特德所说,profile your code。
你确定它的解析时间而不是加载时间吗?你在wifi或移动网络上吗?其他应用加载数据的速度有多快?
那就是说,不要使用那么多ArrayList
个对象,一个带有自定义容器类型的单个数组列表(即Ticket对象有价格和日期,不需要有价格数组和日期数组)
检查你的内存使用情况,通常如果事情很慢你会产生大量的垃圾。 (在日志中查找GC)
对不会更改的String参数使用final
关键字。所以setString(final String s)
代替setString(String s)
。这可以防止在作为参数传递时复制字符串。
如果可以的话,使用JSON而不是XML,它的重量更轻。
在您做出任何重大更改后,再次profile your code