Android 多个本地通知

Android 多个本地通知,android,notifications,Android,Notifications,下午好 我想在我的应用程序中获得多个本地通知,因此 在我的活动中,此方法应将报警设置为17:20、17:21、17:22,但我在17:22中只有一个通知 public void multiplyAlerts(){ AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); Intent intent = new Intent(this, LocalNotification.class);

下午好

我想在我的应用程序中获得多个本地通知,因此

在我的活动中,此方法应将报警设置为17:20、17:21、17:22,但我在17:22中只有一个通知

public void multiplyAlerts(){

    AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
    Intent intent = new Intent(this, LocalNotification.class);

    for(int i = 0; i < 3; i++){

        Calendar t_calendar = Calendar.getInstance();

        t_calendar.set(Calendar.MONTH, Calendar.DECEMBER);
        t_calendar.set(Calendar.YEAR, 2013);
        t_calendar.set(Calendar.DAY_OF_MONTH, 12);

        t_calendar.set(Calendar.HOUR_OF_DAY, 17);
        t_calendar.set(Calendar.MINUTE, 20 + i);
        t_calendar.set(Calendar.SECOND, 23);
        t_calendar.set(Calendar.AM_PM, Calendar.PM);

        PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_ONE_SHOT);

        alarmManager.set(AlarmManager.RTC_WAKEUP, t_calendar.getTimeInMillis(),pendingIntent);

        System.out.println("Calling Alarm  " + i);

    }}
我将这个字符串添加到清单中

<receiver android:name="ru.fors.remsmed.utils.LocalNotification"></receiver>


谢谢你的回答

每个通知都需要一个唯一的ID:

PendingIntent pendingIntent = PendingIntent.getActivity(context, my_id, new Intent(), 0);

对于每个通知,您需要有一个唯一的ID:

PendingIntent pendingIntent = PendingIntent.getActivity(context, my_id, new Intent(), 0);

(int)System.currentTimeMillis()是否可以作为id?您也可以通过一次只设置一个通知来避免这种情况。触发17:20警报时,设置17:21警报等可更轻松地取消警报,因为一次只有一个警报处于活动状态。(int)System.currentTimeMillis()可以作为id吗?您也可以通过一次只设置一个通知来避免这种情况。当您的17:20闹钟被触发时,设置17:21闹钟等可以更轻松地取消闹钟,因为一次只有一个会激活。