2011-05-31 115 views
2

目前我正在開發我的android應用程序。我的要求是這樣的。需要我的android應用程序的設計建議

我需要運行一個定時器5分鐘,當發生超時時,我需要檢查某些事情並採取一定的行動。如果用戶啓動應用程序,則需要繼續運行。

在我的知識,我想繼續這樣

創建服務,並開始在該服務的計時器,做當計時器到期任何需要。我將把一項活動與開始或停止等服務進行交互。

我需要對我的方法及其對此方法的利弊提出建議。爲了運行計時器,我需要一項服務嗎?如果我在活動本身中運行重複計時器,並且如果按下後退按鈕,則活動將變爲後臺並且如果我在該活動中啓動了計時器,計時器也會停止?

我很抱歉如果我不清楚我的問題。我已經通過了android應用程序的基礎知識,然後想着問這個問題。請給我一些想法。

回答

1

沒有必要提供服務。您可以使用Timer並安排TimerTask。如果任務需要觸摸UI,那麼您應該創建一個可以發佈Runnable的Handler。

P.S.你問到如果你的活動進入後臺會發生什麼。定時器將繼續運行,除非您在或其他生命週期方法之一中取消任務或定時器本身。無論你做什麼,都應該在匹配的啓動生命週期方法中啓動計時器任務。如果你不打算取消定時器本身,你應該創建一個守護線程。