2016-12-30 131 views
3

我收到了每隔幾分鐘更新一次的Android通知。如何更新Android通知的時間

首先我創建了一個Builder這樣的:

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context); 

然後,因爲當我告訴它,我每次更新時,我第一次使用此代碼:

mBuilder.setContentTitle("Title"); 
mBuilder.setContentText("Text"); 
NotificationManager manager = (NotificationManager) 
     context.getSystemService(Context.NOTIFICATION_SERVICE); 
manager.notify(0, mBuilder.build()); 

但在通知的右上角,Android仍會顯示首次向用戶顯示的時間。我想要顯示上次更新的時間。我知道這是可能的,因爲Facebook的Messenger應用程序會這樣做 - 更改發送新消息時顯示的時間。

我該如何做到這一點?

目前: test

+0

請記住,在Java中所有代碼都必須是一個類裏面。 –

+0

@ Code-Apprentice,如果我不知道那個,我不會發布截圖。通知已更新,因爲它應該是,只是時間不變 – Nicofisi

+0

是的,我理解你的問題。我只是提供一個建議來幫助改善你的問題。首先,類和方法名稱提供了有關您的代碼的更多信息,可幫助我們回答您的問題。如果不是Android回調,您還應該展示如何調用任何方法。 –

回答

5

你可能尋找NotificationCompat.Builder#setWhen(long)。提供System.currentTimeMillis()應該將時間戳更新爲當前時間。

此外,如果您希望時間戳顯示在Android N或更高版本上,則需要在某個時刻調用NotificationCompat.Builder#setShowWhen(true),因爲它默認爲false。

來源:https://developer.android.com/reference/android/app/Notification.html#when

+0

謝謝!這正是我需要的 – Nicofisi