后台服务往往要通过定时的方式进行日常的作业处理。在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/


更多相关文章

  1. android 播放音乐示例
  2. android防止屏幕关闭后后台服务停止运行
  3. Android 自定义View及其在布局文件中的使用示例(二)
  4. Android 开机自启动示例程序
  5. Android使用SQLite数据库的示例
  6. Android中对Group的各种操作示例代码
  7. 【Android】抽屉控件 SlidingDrawer 的简单示例
  8. android监听手机网络连接状态改变的后台服务
  9. Android日语输入法Simeji使用示例

随机推荐

  1. 清除SQLServer日志的两种方法
  2. SQL Server连接失败错误及解决第1/5页
  3. 最长用最基本的MSSQL数据库备份与还原
  4. 如何创建SQL Server 2000故障转移群集
  5. SQL Server 中调整自增字段的当前初始值
  6. MDF文件在SQL Server中的恢复技术
  7. MS-SQL Server 中单引号的两种处理方法
  8. sql数据库不能直接用instr函数
  9. 显示 Sql Server 中所有表中的信息
  10. 一些 T-SQL 技巧