Android:使用Alarm Manager同时启动多个挂起的意图

时间:2014-01-31 10:57:54

标签: android android-intent alarmmanager android-pendingintent android-alarms

在我的应用程序中,我想设置多个提醒。我使用的代码如下,

    intnt = new Intent(appConxt, RempopActivity.class);
    intnt.putExtra("evinfo", evtime + " " + rem.getname()
            + "\n will start in " + remtime + " minutes");
    intnt.putExtra("evid", remcon.getEvid());
    intnt.putExtra("remId", remcon.getRemid());
    intnt.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);

    pendingIntent = PendingIntent.getActivity(appConxt, remcon.getRemid(), intnt,
            PendingIntent.FLAG_ONE_SHOT);
    am = (AlarmManager) appConxt.getSystemService(Context.ALARM_SERVICE);
    am.set(AlarmManager.RTC_WAKEUP, date.getTime() - (remtime * 60000),
            pendingIntent);

我的问题是,即使在具有不同的 requestCode 之后,如果同时开始多个待处理意图,则只显示一个待处理意图,其他未决意图将不会出现。我怎样才能得到所有待定的意图。

1 个答案:

答案 0 :(得分:0)

上面的代码没有错,因为我在Manifest文件中将RempopActivity作为“SingleInstance”,根据SingleInstance的活动启动模式,在此活动之上不再添加任务。要使上述代码正常工作,请使用启动模式作为“标准”。