0
我有一個alarmManager,每天早上9點重複調用服務。我想每天(上午9點用服務A,中午用服務B和下午4點用服務C觸發鬧鐘(重複)。)AlarmManager set重複多個實例
我目前的做法是每3小時重複一次並獲取當前時間在服務中,並根據時間確定應該觸發哪個動作,但這種感覺過於冒險。這是我的代碼。我希望我可以實例化多個AlarmManager實例,但我懷疑我可以給它的初始化方式。
Intent i_notifcreate = new Intent(this, NotifCreator.class);
PendingIntent pi_notifcreator = PendingIntent.getService(this, 0, i_notifcreate, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, 9);
calendar.set(Calendar.MINUTE, 00);
Log.e("NextAlarm", calendar.getTime().toString());
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_HOUR, pi_notifcreator);
pseduocode內部服務
if(time == 9AM){
A()
} else if (time == noon){
B()
} ... etc