2012-01-29 20 views
0

我一直在開發Android應用程序,使用帶有「下載」按鈕的Activity以及在後臺執行下載的服務。我有以下任務:顯示當前顯示的應用程序的下載消息。我如何檢測它?是否有標準的Android操作系統功能?謝謝。如何檢測應用程序是否顯示?

回答

1

您可以在活動級別執行此操作,而不是整個應用程序。查看activity lifecycle的描述。 (另請參閱Activities framework topic中的「管理活動生命週期」。)當活動變得可見時,框架將稱其爲onStart()方法。當用戶可以與活動交互時,框架將調用onResume()方法。您可以覆蓋其中的一個,以瞭解您的活動何時顯示或實際與用戶進行交互。

請注意,正如文檔中所述,從Honeycomb(3.0)開始,情況會有所不同。

+0

非常感謝。 – user1166635 2012-01-29 07:58:06

0

基本的方法是使用廣播接收器在服務和應用程序之間共享信息。如果您的要求是更新主要活動的下載狀態/進度,則可以使用它。

Here是一個關於如何在服務和活動之間共享信息的簡單教程。您可以更新下載進度。它適用於當前正在運行的活動。

要檢查活動是否開始,您應該覆蓋onCreateonStart()onResume()函數。

還存在另一個問題,提出了一個非常巧妙的解決辦法,我建議你應該嘗試使用。它涉及擴展Application類來存儲信息,並使用它的實例來檢查更新。請參閱this

相關問題