2011-07-07 126 views
1

我需要編寫一些應用程序,每隔幾分鐘會做一些背景工作。我的問題是我如何從服務開始這項工作。我是否需要使用線程並使用某些系統實用程序計算時間,或者有更好的解決方案?Android - 每隔幾分鐘做一次背景工作

回答

1

您可以使用HandlerpostDelayed方法:

Handler handler = new Handler(Looper.getMainLooper()); 
handler.postDelayed(new Runnable() 
    public void run() { 
     // your work 
    } 
}, minutes * 60 * 1000); 

如果設定的時間足夠長,你也可以考慮使用AlarmManager

1

(不能似乎添加評論,因此增加一個答案)

,因爲這個任務將時間可持續進行,我會延長這樣的錫安的例子:

Handler handler = new Handler(Looper.getMainLooper()); 
handler.postDelayed(new Runnable() 
    public void run() { 
    // your work 
    //... 
    handler.postDelayed(this, minutes * 60 * 1000); //this will schedule the task again 
    } 
}, minutes * 60 * 1000); 
相關問題