我创建了一个新的应用程序,它在开始时有几个后台操作。 如果没有其他应用程序在运行,则加载应用程序需要5-6秒。 但是,如果打开其他应用程序,加载时间会更长,加载时间需要15-20秒......有没有人知道背后的原因?
答案 0 :(得分:1)
每个应用程序都需要一段时间才能启动,但几秒钟似乎需要很长时间,具体取决于设备的使用寿命。你绝对应该尝试从UI线程中获取那些长时间运行的操作。
如果你没有做任何需要触摸UI的事情,你可以尝试这样的事情:
Runnable runnable = new Runnable() {
@Override
public void run() {
//Do your long-running operations here.
}
};
new Thread(runnable).start();
或者,如果您需要执行触摸UI组件的操作,可以使用AsyncTasks:
private class LongRunningTask extends AsyncTask<String, Integer, Long> {
protected Long doInBackground(String... data) {
//Do your long-running operations here.
}
protected void onPostExecute(Long result) {
//Update a UI element to show the results
}
}