当我在没有在Android Oreo上指定频道的情况下从Firebase控制台发送通知时,必须使用"其他"如果从Android清单提供默认频道,则 OR 。所以我在我的应用中创建并提供默认频道:
// Application onCreate
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
val manager = getSystemService(Context.NOTIFICATION_SERVICE)
as NotificationManager
val channelId = getString(R.string.notification_channel_id)
if(manager.getNotificationChannel(channelId)==null) {
val channel = NotificationChannel(channelId,
getString(R.string.notification_channel_name),
NotificationManager.IMPORTANCE_DEFAULT)
channel.description =
getString(R.string.notification_channel_description)
manager.createNotificationChannel(channel)
}
}
// Manifest
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel"
android:value="@string/notification_channel_id" />
但它不起作用。通知始终使用&#34;杂项&#34;渠道。我在这里遗漏了什么或者它是Firebase的错误吗?
答案 0 :(得分:7)
清单中的正确元数据是:
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="@string/notification_channel_id" />
请注意_id
属性值末尾的android:name
。
将尽快更新文档。