Android 定時任務設置

jopen 11年前發布 | 43K 次閱讀 Android Android開發 移動開發

產品客戶端需要增加提醒功能,類似鬧鐘,這邊實現方式就是AlarmManager+廣播,設置兩個廣播,一個用來接收執行任務的;一個用來實現開機啟動,實現后臺服務。代碼如下:

關機重啟執行接收廣播,執行重新計算任務時間的service

public class BootReceiver extends BroadcastReceiver{
private static final String ACTION="android.intent.action.BOOT_COMPLETED";


public void onReceive(Context context, Intent intent) {

                if (intent.getAction().equals(ACTION)){
                Intent it = new Intent(Intent.ACTION_RUN); 
                it.setFlags(Intent.FLAG_INCLUDE_STOPPED_PACKAGES); 
                it.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                    it.setClass(context, ServiceSetTime.class);   
                    context.startService(it); 

                }
}
}

執行任務的線程:

 public void onReceive(Context context, Intent intent) {
              Intent i= new Intent();
              i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
              i.setClass(context, TService.class);
              context.startService(i);       
}  
}

當然,如果初次進入程序時也得設置下時間,設置任務時間與鬧鐘的機制一樣

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!