2015-05-01 30 views
0

我有一個廣播接收器,它啓動一個intent服務。來自廣播接收機的更新通知android

意圖服務觸發通知。

如果有多個通知被觸發,那麼由於NOTIFICATION_ID相同,它不會更新。

有什麼辦法可以知道有多少通知已被解僱? 以便我可以相應地更新我的通知。

我不想單獨發出通知。我想更新現有的通知。我需要弄清楚的是在發佈通知時已經觸發的通知數量。當用戶點擊它時,該數字應該重置。

+0

創建任何服務triggerNotification()方法,並調用它每次通知被觸發,該方法需要一個變量「INT NUM = 0」,並增加它的每一個你的方法被調用。然後再次使用builder.setContentText(String.valueOf(num));和 notificationManager.notify(id,builder.build());更新通知 – Apurva

+0

並聲明變量static?我已經嘗試過了。但是這種行爲是不可預測的。有時會更新變量,有時它不會。 –

+0

你需要什麼通知數?我認爲你正在做一些根本性的錯誤... – pskink

回答

0

在您的通知方法下做出以下更改。

notificationManager.notify(getID(),notification);

getId()方法將提供唯一的id,以便多個通知同時發生。

private final static AtomicInteger c = new AtomicInteger(3);

public static int getID() { 
    return c.incrementAndGet(); 
} 
+0

我不想單獨發出通知。我想更新現有的通知。我需要弄清楚的是在發佈通知時已經觸發的通知數量。當用戶點擊它時,該數字應該重置。 –

+0

您可以使用共享首選項來存儲該整數值。每次通知觸發時都會增加該值並再次存儲在共享首選項中。 當你點擊通知並重定向到任何活動,服務或廣播接收機那裏設置你的首選變量爲0 –

+0

我認爲這是最後的手段。有沒有內置的方式來更新Android中的通知? :o –