NotificationManager和NotificationManagerCompat有什么区别?

时间:2018-09-30 07:08:04

标签: java android push-notification android-notifications

我可以创建通知,以便:

 NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
 if (notificationManager != null) {
     notificationManager.notify(NOTIFICATION_ID, notification);
 }

等等:

 NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(MainActivity.this);
 notificationManagerCompat.notify(NOTIFICATION_ID, notification);

那么,这些方式之间有什么区别?

2 个答案:

答案 0 :(得分:1)

由于我没有Android方面的经验,所以我无法解释它们之间的区别。但是您可以按照下面提到的波纹管链接。我认为这可以为您提供帮助。

https://medium.com/@krossovochkin/android-notifications-overview-and-pitfalls-517d1118ec83

答案 1 :(得分:1)

NotificationManagerCompatNotificationManager的兼容性库,具有旧平台的后备功能。

由于有许多不同的调整,我建议您看看NotificationManagerCompat类。

通常,NotificationManagerCompat中的几乎所有函数都调用NotificationManager中的兼容函数。

例如,函数NotificationManagerCompat.notify()检查标志EXTRA_USE_SIDE_CHANNEL。如果它是false-函数将简单地调用NotificationManager.notify()。如果设置为true,则发布的通知应使用辅助渠道进行传递,而不要使用通知管理器(需要支持辅助信道通知的最大sdk构建版本为API 19)。