如何更新Android通知的时间

Nic*_*isi 4 java notifications android android-notifications

我有一个Android通知,每隔几分钟就会更新一次.

首先,我创建了一个Builder:

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context);
Run Code Online (Sandbox Code Playgroud)

然后,当我第一次显示它并且每次更新它时,我都使用以下代码:

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

但是在通知的右上角,Android仍会显示首次向用户显示的时间.我希望它显示上次更新的时间.我知道这是可能的,因为Facebook的Messenger应用程序可以做到这一点 - 更改发送新消息时的显示时间.

我怎样才能做到这一点?

目前: 测试

Kis*_*kae 9

你可能正在寻找NotificationCompat.Builder#setWhen(long).提供它System.currentTimeMillis()应该将时间戳更新为当前时间.

此外,如果您希望该时间戳显示在Android N或更高版本上,则需要NotificationCompat.Builder#setShowWhen(true)在某个时刻调用,因为它默认为false.

资料来源:https://developer.android.com/reference/android/app/Notification.html#when