sam*_*m_k 10 android android-notifications android-8.0-oreo notification-channel
从Android O(API 26)版本引入的通知渠道.我从以下链接中了解到它:
问题:
如果我有多个通知数,那么在应用程序启动时创建通知通道并将其保留在最佳状态是否是个好主意ApplicationScope?
public void addNotificationChannels(Context context) {
List<NotificationChannel> channels = new ArrayList<>();
channels.add("channel_1");
channels.add("channel_2");
.
.
channels.add("channel_7");
NotificationManager notificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.createNotificationChannels(channels);
}
Run Code Online (Sandbox Code Playgroud)如果我new Notification.Builder(getApplicationContext(), PRIMARY_CHANNEL)在将通道添加到通知管理器之前尝试执行此行,会发生什么
A)在创建通知的同时:
正如文档所说:
使用其原始值创建现有通知通道不会执行任何操作,因此在启动应用程序时调用此代码是安全的。
因此,您可以在创建通知本身的同时安全地创建通知通道,无需检查通道是否已创建。
B)内部应用程序或任何活动/片段。
注意:如果您使用原始 FCM,则在 SDK 为您发布通知之前创建通道很有趣,因为根据推送有效负载参数android_channel_id,您可以将该推送关联到应用程序中已创建的特定通道。
Fcm 有效负载:https://firebase.google.com/docs/cloud-messaging/http-server-ref
createNotificationChannel使用之前使用的相同ID 调用是安全的,不会重新创建它.| 归档时间: |
|
| 查看次数: |
8951 次 |
| 最近记录: |