在Android的每个星期一重复报警使用AlarmManager / BroadcastReceiver

我想在每个星期一上午09:00和下午05:00重复我的任务。 我用了下面的代码,但是我不能重复这个任务。

活动代码: –

public class AndroidScheduledActivity extends Activity { /** Called when the activity is first created. */ int id = 115; Intent myIntent; PendingIntent pendingIntent; AlarmManager alarmManager; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button buttonStart = (Button)findViewById(R.id.start); myIntent = new Intent(getBaseContext(), MyScheduledReceiver.class); myIntent.putExtra("id", id); pendingIntent = PendingIntent.getBroadcast(getBaseContext(), id, myIntent, 0); alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); buttonStart.setOnClickListener(new Button.OnClickListener(){ public void onClick(View arg0) { // TODO Auto-generated method stub setForMonday(); finish(); }}); } public void setForMonday() { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.DAY_OF_WEEK,2); calendar.set(Calendar.HOUR,09); calendar.set(Calendar.MINUTE, 00); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); System.out.println("Old is set@ :== " + calendar.getTime()); long interval = calendar.getTimeInMillis() + 604800000L; System.out.println("Next Millis = " + interval); alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), interval, pendingIntent); } } 

注: – 我计算的时间间隔基于86400000 * 7 = 604800000;

接收人: –

 public class MyScheduledReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub System.out.println("Receiver"); } } 

如果有人有任何想法,请帮助。 谢谢

Solutions Collecting From Web of "在Android的每个星期一重复报警使用AlarmManager / BroadcastReceiver"