2011-05-31 112 views
2

目前我正在开发我的android应用程序。我的要求是这样的。需要我的android应用程序的设计建议

我需要运行一个定时器5分钟,当发生超时时,我需要检查某些事情并采取一定的行动。如果用户启动应用程序,则需要继续运行。

在我的知识,我想继续这样

创建服务,并开始在该服务的计时器,做当计时器到期任何需要。我将把一项活动与开始或停止等服务进行交互。

我需要对我的方法及其对此方法的利弊提出建议。为了运行计时器,我需要一项服务吗?如果我在活动本身中运行重复计时器,并且如果按下后退按钮,则活动将变为后台并且如果我在该活动中启动了计时器,计时器也会停止?

我很抱歉如果我不清楚我的问题。我已经通过了android应用程序的基础知识,然后想着问这个问题。请给我一些想法。

回答

1

没有必要提供服务。您可以使用Timer并安排TimerTask。如果任务需要触摸UI,那么您应该创建一个可以发布Runnable的Handler。

P.S.你问到如果你的活动进入后台会发生什么。定时器将继续运行,除非您在或其他生命周期方法之一中取消任务或定时器本身。无论你做什么,都应该在匹配的启动生命周期方法中启动计时器任务。如果你不打算取消定时器本身,你应该创建一个守护线程。