首页 > 解决方案 > Firebase 无效通知小图标

问题描述

我正在尝试在应用程序中显示通知。应用程序在后台或前台显示通知但是当应用程序未从应用程序后台堆栈中清除时应用程序崩溃。我不知道为什么会这样。下面是我的应用程序通知代码任何帮助将不胜感激。

if (VERSION.SDK_INT >= 26) {
    notif = (new android.app.Notification.Builder(this, this.getString(string.notification_channel_id))).setSmallIcon(notificationResId).setContentTitle(title).setStyle((new BigTextStyle()).bigText(this.mText == null ? "" : this.mText)).setContentText(this.mText == null ? "" : this.mText).setVisibility(0).setChannelId(this.getString(string.notification_channel_id)).setAutoCancel(true);
} else {
    mBuilder = (new Builder(this)).setContentTitle(title).setSmallIcon(notificationResId).setStyle((new android.support.v4.app.NotificationCompat.BigTextStyle()).bigText(this.mText == null ? "" : this.mText)).setContentText(this.mText == null ? "" : this.mText).setAutoCancel(true).setDefaults(-1);
}

if (VERSION.SDK_INT >= 26) {
    notif.setContentIntent(contentIntent);
    this.mNotificationManager.notify(id, notif.build());
} else {
    mBuilder.setContentIntent(contentIntent);
    this.mNotificationManager.notify(id, mBuilder.build());
}

错误:

java.lang.IllegalArgumentException:无效通知(没有有效的小图标):通知(pri=0 contentView=null vibrate=default sound=default defaults=0xffffffff flags=0x11 color=0x00000000 vis=PRIVATE semFlags=0x0 semPriority=0)

标签: androidpush-notification

解决方案


在“应用程序”的清单中添加此元数据

<meta-data
         android:name="com.google.firebase.messaging.default_notification_icon"
         android:resource="@mipmap/ic_hello" />

推荐阅读