2015-06-05 226 views
1

我創建了一個新的應用程序,在啓動時有幾個後臺操作。 如果沒有其他應用程序正在運行,則需要5-6秒才能加載應用程序。 但是,如果打開其他應用程序,加載時間會更長,加載需要15-20秒...是否有人知道背後的原因?Android應用有時需要很長時間才能加載

+0

如果它們是非UI組件,是否考慮將它們推送到後臺服務? –

+0

如果您使用的是虛擬設備,則最有可能取決於處理器,而您的電腦性能 – silverFoxA

回答

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 
    } 
} 
相關問題