如何在android上创建在后台进程中设置计时器的程序

时间:2012-06-17 19:01:55

标签: java android timer

我是android编程的新手。我想创建一个定时器程序,通过独立定义数据来设置时间。

例如,我可以设置5秒启动和10秒停止第三方程序切换这样的时间直到电池减少到指定的值(假设100到90%),然后计时器将停止在90% 。

而且,我想收集调用启动和停止的日志数据时间。例如,在上午9点开始5秒,然后在9.15到9.20之后的9.06到9.15点停止,并且还收集每个级别的电池百分比。

当我关闭屏幕时,计时器是否仍在运行或停止,因为android进入睡眠模式?如果我关闭屏幕,日志会收集吗?我应该将程序编码为服务以便在后台进程上运行吗?

干杯 男孩

1 个答案:

答案 0 :(得分:2)

有很多方法可以执行后台操作,但根据您的描述, 使用TimerTask类+ Timer来安排后台任务似乎是一个经典案例:

http://developer.android.com/reference/java/util/TimerTask.html

你也可以通过这几个例子来学习如何使用它:

http://thedevelopersinfo.wordpress.com/2009/10/18/scheduling-a-timer-task-to-run-repeatedly/

http://android.okhelp.cz/timer-task-timertask-run-cancel-android-example/

How do you use a TimerTask to run a thread?

如果您希望任务相互依赖(不附加到某些活动的实时周期),并在应用程序处于后台运行时运行(没有应用程序的运行活动),那么您应该从服务运行计时器任务。在这种情况下 - 如果屏幕打开或关闭无关紧要 - 计时器任务将根据计划进行工作。