我設置了2個鬧鐘,一個用於通知,另一個用於完成一些任務。我的問題是,只有一個警報似乎工作(通知服務一,第一個警報設置)。其他鬧鐘不會熄滅。這裏是我的代碼:具有2個待處理意圖的報警管理器只有1個作品?
Intent myIntent1 = new Intent(getApplicationContext(), NotificationService.class);
PendingIntent pendingIntent = PendingIntent.getService(getApplicationContext(), 0, myIntent1, 0);
AlarmManager alarmManager1 = (AlarmManager) this.getSystemService(Context.ALARM_SERVICE);
Calendar calendar1 = Calendar.getInstance();
calendar1.setTimeInMillis(System.currentTimeMillis());
long frequency1 = 30 * 1000; // in ms
alarmManager1.setRepeating(AlarmManager.RTC_WAKEUP, calendar1.getTimeInMillis(), frequency1, pendingIntent);
// Set alarm to fire go to Next day everyday at the same time
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 14); // For 1 PM or 2 PM
calendar.set(Calendar.MINUTE, 57);
calendar.setTimeInMillis(System.currentTimeMillis());
Intent myintent = new Intent(getApplicationContext(), AlarmNextDayService.class);
AlarmManager alarmManager = (AlarmManager) this.getSystemService(Context.ALARM_SERVICE);
PendingIntent pi = PendingIntent.getService(getApplicationContext(), 11, myintent,0);
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),AlarmManager.INTERVAL_DAY, pi);
歡迎任何建議。我看了其他消息來源,直到現在,對我來說沒有任何作用。 我還添加報警permisison清單文件,如下所示:
<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
謝謝
您是否嘗試在每個intent上添加一個唯一標識符,如:Intent intent = new Intent(「uniqId」,null,context,Receiver.class);'? –
你有清單中列出的第二個'Service'嗎?另外,在設置小時和分鐘後,您是否意識到您將「Calendar」實例重置爲當前時間?請記住,在這段時間內,一個不精確的警報可能會消失很多。 –
原來是這個問題,@MikeM。你能把它寫成答案嗎? – LoveMeow