Android应用程序太迟钝了

时间:2012-07-20 12:03:51

标签: android http android-asynctask

我的Android应用程序运行速度很慢而且滞后很多。我的服务器上有PHP API,我的应用程序通过HTTP请求数据。

尽管如此,问题是有时候我应该等几秒才能看到结果。我在onCreate的主线程中完成了所有计算(解析XML,添加控件)并从AsyncTask中的HTTP服务器下载数据。

如何优化我的程序以加快速度?我希望它首先加载活动,然后在后台加载,下载和解析数据。这怎么可能?抱歉新婚。

2 个答案:

答案 0 :(得分:0)

你的意思是什么?你会详细说明这个问题吗?

一个建议是从OnCreate中删除解析XML并将其移动到AsysnTask。原因是你在UI主线程中进行耗时的操作会影响要显示的活动。

创建线程以执行HTTP相关操作并在同一线程上解析响应,同时执行解析操作show dialog。

解析完成后关闭对话框,然后显示要显示的活动。

答案 1 :(得分:0)

在AsyncTask的doInBackground()方法中添加数据解析并创建数据对象,然后在onPostExecute更新ui元素。

做这样的事情的原因是应用程序始终响应,只是在ui线程上做小工作,以免冻结。

您可以将视图设置为默认状态,并在顶部的某处添加进度以指示活动当前正在加载。例如,您可以创建一个无法选择的空ListViewButton,并且在解析完成后,您应该将适配器设置为列表并使按钮返回以再次选择。

所有这些事情都可以根据用户在等待时的想法来实现。