是否有办法只播放一次通知声音,以便发出重复通知?
有时我们的用户不小心发送了多个相同的通知,而第二个则不喜欢Android中的重复通知会发出恼人的声音。我无法找到处理此问题的设置。
答案 0 :(得分:0)
我不认为有一个函数可以自己处理这个问题,但是如果每个通知都有唯一的ID,那么你就可以编写它(这样副本就会有相同的ID)。
我会更好地解释:当您在onMessageReceived()函数中收到新消息时,您会检查并查看是否存在具有相同ID的通知。如果是这样的话,新的是重复的,否则它是真实的新的。
这是检查通知Is it possible to check if a notification is visible or canceled?
的可行方法答案 1 :(得分:0)
假设您知道识别什么是“重复通知”,则此代码应该可以解决问题:
private Notification buildNotification(Context context, int icon, String title, String message, boolean isDuplicate) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
.setSmallIcon(icon)
.setContentTitle(title)
.setContentText(message)
// Decide if you want a sound or not based on whether it is duplicate
.setSound(isDuplicate ? null : RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));
return builder.build();
}