- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在理解 setGroup()
的目标时遇到了一些麻烦方法。
正如文档所说:
...Grouped notifications may display in a cluster or stack on devices which support such rendering....
这是第一个问题:
我创建了一个显示自定义文本消息的方法:
public static void showNotification(Context context, String title, String message, PendingIntent pendingIntent) {
notificationMessages.add(message);
NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
.setContentTitle(title)
.setContentText(message)
.setAutoCancel(true)
// .setGroupSummary(true)
.setSmallIcon(R.drawable.ic_launcher)
.setContentInfo("" + (notificationMessages.size()))
/*.setGroup(++i + "")*/;
NotificationCompat.InboxStyle inboxStyle = new NotificationCompat.InboxStyle();
inboxStyle.setBigContentTitle(title);
for (int i = 0; i < notificationMessages.size(); i++) {
inboxStyle.addLine(notificationMessages.get(i));
}
builder.setContentIntent(pendingIntent);
builder.setStyle(inboxStyle);
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
Notification notification = builder.build();
mNotificationManager.notify(0, notification);
}
并使用 notificationID
、setGroup
和 setGroupSummary
方法。
public static void showNotification(Context context, String title, String message, PendingIntent pendingIntent) {
notificationMessages.add(message);
NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
.setContentTitle(title)
.setContentText(message)
.setAutoCancel(true)
// .setGroupSummary(true)
.setSmallIcon(R.drawable.ic_launcher)
.setContentInfo("" + (notificationMessages.size()))
.setGroup(GROUP_KEY);
NotificationCompat.InboxStyle inboxStyle = new NotificationCompat.InboxStyle();
inboxStyle.setBigContentTitle(title);
for (int i = 0; i < notificationMessages.size(); i++) {
inboxStyle.addLine(notificationMessages.get(i));
}
builder.setContentIntent(pendingIntent);
builder.setStyle(inboxStyle);
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
Notification notification = builder.build();
mNotificationManager.notify(new Random().nextInt(3), notification);
}
但是,没有视觉上的变化如果我评论行与否。所以我很难理解这种方法的目的。
最佳答案
来自官方文档:
http://developer.android.com/preview/features/notification-updates.html
Android N also allows you to bundle similar notifications to appear as a single notification. To make this possible, Android N uses the existing NotificationCompat.Builder.setGroup() method. Users can expand each of the notifications, and perform actions such as reply and dismiss on each of the notifications, individually from the notification shade.
这意味着 setGroup
只有在设备支持时才会有所不同。
支持它的设备有:
以下博文展示了这些在 Android N 上的工作方式:https://medium.com/exploring-android/android-n-introducing-upgraded-notifications-d4dd98a7ca92
下面是一组渲染图:
这意味着 setGroup
对运行任何低于 API23 的设备没有影响,包括 Marshamallow、Lollipop、KitKat 等。
关于android - Notification.Builder 中 setGroup() 的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37163258/
我想使用 setGroup() 将通知分配给一个组,用于堆叠通知并汇总它们。 赞HERE final static String GROUP_KEY_SAPPHIRE = "group_key_ema
我正在尝试创建通知组,这是我的代码: // Build the notification, setting the group appropriately Notification notif =
我目前正在奥利奥和 Lollipop 设备上进行测试。到目前为止我所做的: final static String GROUP_KEY_NOTIFY = "group_key_notify"; int
来自APUE #include /* on Linux */ int setgroups(int ngroups, const gid_t grouplist[]); The setgroups f
我喜欢为我的消息应用程序提供一个 stck 类型的通知,它是一个网络应用程序。我的通知正在运行。但是每次收到新通知时,之前的通知都会消失,然后会出现新通知。当我用谷歌搜索时,我发现可以使用 setGr
我检查了问题: setGroup() is undefined for the type NotificationCompat.Builder? 但这并没有帮助。 我有一个从 eclipse 导入的项
我将多个通知堆叠在使用以下方法创建的 bundle 中: setGroup("groupname"); 和 setGroupSummary(true); 方法。 每个通知都有一个 Action 。操作
我在理解 setGroup() 的目标时遇到了一些麻烦方法。 正如文档所说: ...Grouped notifications may display in a cluster or stack on
我想使用 setGroup 堆叠通知(如此处所述:https://developer.android.com/training/wearables/notifications/stacks.html)
我正在测试可堆叠通知 (Stacking Notifications article) . 我检测到在某些情况下,在运行 android 4.X KitKat 的设备中调用 notify() 后通知不
本文整理了Java中org.gradle.api.tasks.bundling.Zip.setGroup()方法的一些代码示例,展示了Zip.setGroup()的具体用法。这些代码示例主要来源于Gi
现在我正在使用 notificationID 将已经可见的通知更新为新通知。我真的很想看到有关如何使用这两种方法以及通知分组的实际示例。 我正在使用带有 4.3 的 galaxy S3,我认为它应该支
来自 APUE #include /* on Linux */ int setgroups(int ngroups, const gid_t grouplist[]); The setgroups
我有一个找不到答案的问题。我试过 AndroidDeveloper 教程,我在 stackoverflow 和谷歌上搜索过,但要么我的搜索技能太棒了,要么我认为没有答案可以解决我的问题。 当有多个消息
本文整理了Java中org.apache.activemq.transport.discovery.zeroconf.ZeroconfDiscoveryAgent.setGroup()方法的一些代码示
在 Sequelize 中,如果我有一个简单的父子关系,我可以设置没有整个对象的外键列: Chapter.belongsTo(Book); // this works, but I had to qu
我是一名优秀的程序员,十分优秀!