android中使用定时任务
后台服务往往要通过定时的方式进行日常的作业处理。在android本地后台服务示例的示例中使用了java线程休眠的办法做到简单的定时处理。类似这样:
Thread thread = new Thread() {
@Override
public void run() {
while (!threadDisable) {
try {
if (started) {
Log.d(”sms.service”, “send a sms message.”);
}
Thread.sleep(1000 * 5);
} catch (InterruptedException e) {
}
可以使用java API中的Timer实现精确的定时处理,启动定任务:
@Override
public void onCreate() {
super.onCreate();timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {@Override
public void run() {
if (started) {
Log.d(“sms.service”, “send a sms message.”);
}
}
}, 0, 1000 * 5);
在服务shutdown的时候,停止定时任务:
@Override
public void onDestroy() {
super.onDestroy();
if (timer != null) {
timer.cancel();
}
源代码见:
http://easymorse.googlecode.com/svn/tags/android.timer.local.service.demo/
更多相关文章
- Android中Services简析
- Android引路蜂地图开发示例:第一个地图应用
- Android(安卓)Service 系统服务
- Android(安卓)Framework AIDL的使用
- Android(安卓)ApiDemos示例解析(15):App->Activity->SetWallpaper
- Android(安卓)按键处理(驱动层到上层)架构
- Android消息处理机制
- Android(安卓)本地代码中的LIKELY和UNLIKELY宏
- Android与Java AIO实现简单Echo服务器与客户端