在Android设备和Pebble上显示不同的通知

时间:2016-09-16 06:38:47

标签: android pebble-watch

当我使用WhatsApp或Telegram并收到N条消息时,Android上的通知会显示“N条新消息”(并且可以展开)。

On Android

  • 电报显示Android上有contentText“7条新消息”的通知。 我已成功实现此目标

但是,在我的Pebble Time中,最后一个通知是最后一条消息的字符串,而不是“7条新消息”。

Telegram On Pebble

  • 在Pebble上,它显示第7条(最后一条)消息(被删除的部分是电话号码)。 这就是我想要的

我正在尝试开发类似的功能,但没有成功。我的Android上的通知正确显示(“N个新消息”)但是在Pebble Time上,它是相同的(也是“N个新消息”,我希望它是第N个消息)。

My App On Pebble

  • 我在Pebble上的应用。这是我想要的。

我曾尝试两次调用.notify(一个包含“N个新消息”,另一个包含最后一条消息)并立即调用.cancel后者,但Pebble Time仅显示第一个消息。

如果我没有在第二个通知上拨打.cancel,我的Pebble会显示我想要的内容但是Android和Pebble上都会有2个通知(我不想要)。

如何实现WhatsApp和Telegram等类似功能?

更新

这是我使用的代码段(我使用了不同的通知ID)

NotificationCompat.Builder nb = new NotificationCompat.Builder();
...
nb.setContentText("2 new messages");
notificationManager.notify(1, nb.build());

nb.setContentText("B");
notificationManager.notify(2, nb.build());
notificationManager.cancel(2);

1 个答案:

答案 0 :(得分:0)

因为您对两个通知项目使用相同的 id 。您可以尝试使用每个节目通知项目的不同ID。

来自Android文档:https://developer.android.com/reference/android/app/NotificationManager.html#notify(int,android.app.Notification)

  

id:此通知的标识符在您的内容中是唯一的   应用