2010-09-13 76 views
2

我,我有一个服务,我想,一旦它开始,它执行是工作 每30秒。我怎样才能做到这一点?30秒的如何等待周期来运行服务

TNK 瓦莱里奥

+0

也许这个链接可以帮助你:http://stackoverflow.com/questions/1520887/how-to-pause-睡眠线程或进程功能于安卓 – ssanga 2010-09-13 15:46:21

回答

6

为您服务(服务的绑定部分缺失)处理程序使用示例:

import android.app.Service; 
import android.os.Handler; 

public class PeriodicService extends Service { 

private Handler mPeriodicEventHandler; 

    private final int PERIODIC_EVENT_TIMEOUT = 30000; 

    @Override 
    public void onCreate() { 
     super.onCreate(); 

     mPeriodicEventHandler = new Handler(); 
     mPeriodicEventHandler.postDelayed(doPeriodicTask, PERIODIC_EVENT_TIMEOUT); 
    } 

    private Runnable doPeriodicTask = new Runnable() 
    { 
     public void run() 
     { 
      //your action here 
      mPeriodicEventHandler.postDelayed(doPeriodicTask, PERIODIC_EVENT_TIMEOUT); 
     } 
    }; 

    @Override 
    public void onDestroy() { 

     mPeriodicEventHandler.removeCallbacks(doPeriodicTask);  
     super.onDestroy(); 
    } 
} 
1

可以使用Timer

我还发现了被称为Handler另一个类的一个实例(也可用于Android系统),显然应该使用UI时更好地工作。