2010-09-13 78 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時更好地工作。