多个通知 - android

时间:2013-08-14 05:59:52

标签: android performance

我正在使用闹钟管理器来显示多个本地通知。通知工作正常,但只有在我从通知栏中清除通知后才会发生通知。序列没有发生。

待定意图的代码

Intent intent = new Intent(this, TimeAlarm.class);
        for(int i=0;i<milliSec.size();i++){     
        PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0,intent, PendingIntent.FLAG_ONE_SHOT);
        am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),(milliSec.get(i)), pendingIntent);
        System.out.println("Calling Alaram...");

显示通知的代码

public void onReceive(Context context, Intent intent) {
     nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
     CharSequence from = "Sample Notification";
     CharSequence message = "Notification different milliseconds ...";
     PendingIntent contentIntent = PendingIntent.getActivity(context, 0,  new Intent(), 0);
     Notification notif = new Notification(R.drawable.ic_launcher, "Notification Test...", System.currentTimeMillis());
     notif.setLatestEventInfo(context, from, message, contentIntent);
     notif.flags= Notification.FLAG_AUTO_CANCEL;
     nm.notify(1, notif);
    }

如何在不清除通知中的现有消息的情况下执行多个通知序列。提前致谢

2 个答案:

答案 0 :(得分:3)

使用这行代码

nm.notify( System.currentTimeMillis(), notif);

您已将其设置为1,因此每次超过通知

答案 1 :(得分:1)

您始终在意图中传递相同的请求代码。所以只需要更改请求代码。

 PendingIntent contentIntent = PendingIntent.getActivity(context, request_code,  new Intent(), 0);

还需要更改通知ID。

nm.notify(change_notify_id, notif);