2016-12-30 53 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