Firebase 通知始终显示空白图标
Firebase Notification Always shows blank icon
我是 FCM 的新手。我无法让 FCM 使用我的应用程序图标作为通知图标,并且图标始终是白色空白。
我将图标导入到 mipmap
文件夹,但似乎没有任何变化。正如一些人所说,这是因为棒棒糖通知
但问题是,FCM 通知会自动弹出,我无法让通知生成器覆盖图标。我该如何更改它?
如果您遇到这个问题
看到这个link:
我遇到了同样的问题。我通过制作设计师的透明图像来解决。
确保您的徽标应为 72*72 像素。
注意:不要浪费时间在 google 上搜索这个问题,您只需要一个尺寸应为 72*72 的透明图标。
这是 FCM 的默认行为。当应用程序在后台时,它会显示白色图标。
使用此标签并将其放入您的清单中。对我来说这很有效。希望它也对你有用。确保 meta-data 在应用程序内部,如 quickstart
中提到的示例
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
tools:ignore="GoogleAppIndexingWarning">
<!-- [START fcm_default_icon] -->
<!-- Set custom default icon. This is used when no icon is set for incoming notification messages. -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/ic_stat_ic_notification" />
<!-- Set color used with incoming notification messages. This is used when no color is set for the incoming
notification message. -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_color"
android:resource="@color/colorAccent" />
<!-- [END fcm_default_icon] -->
<!-- [START fcm_default_channel] -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="@string/default_notification_channel_id" />
<!-- [END fcm_default_channel] -->
<activity
android:name=".EntryChoiceActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".kotlin.MainActivity" />
<activity android:name=".java.MainActivity" />
当没有为传入通知设置图标时,firebase 将采用默认图标并显示通知。
要覆盖默认图标,请将以下代码添加到您的 Android 清单文件中
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/ic_stat_ic_notification" />
更多信息可以关注link
我遇到了同样的问题,并按照此处建议的所有方法进行操作,但没有任何效果。
最终,将 firebase 插件从 11.8.0 降级到 11.6.0 解决了这个问题 github issue。
这也可能对某人有所帮助。
将您的通知保持在 72 x 72 大小,并完全白色。请参阅此答案所附的照片。
然后将下面的代码粘贴到您的清单中。
<meta-data android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/ic_stat_money" />
您可以使用 Android Studio 的默认图标包制作新图标。
为此右键单击您的 drawable 文件夹 > New > Image Asset
唯一对我有用的是在 Android 工作室中 生成一个 通知图标 图像资产。
要使用图像作为通知图标,只需将资产类型设置为“图像”和 select 文件。
提示 #1:在透明背景上使用白色图标!
提示 #2:如果 window 右侧的预览仅包含白色方块,您的通知图标看起来就像那样 - 白色方块!
提示 #3:资产的名称应该添加到 AndroidManifest
中的 meta-data
标签中
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/whatever_you_set_for_image_asset_name" />
来源:摘自
我是 FCM 的新手。我无法让 FCM 使用我的应用程序图标作为通知图标,并且图标始终是白色空白。
我将图标导入到 mipmap
文件夹,但似乎没有任何变化。正如一些人所说,这是因为棒棒糖通知
但问题是,FCM 通知会自动弹出,我无法让通知生成器覆盖图标。我该如何更改它?
如果您遇到这个问题
看到这个link:
我遇到了同样的问题。我通过制作设计师的透明图像来解决。 确保您的徽标应为 72*72 像素。
注意:不要浪费时间在 google 上搜索这个问题,您只需要一个尺寸应为 72*72 的透明图标。
这是 FCM 的默认行为。当应用程序在后台时,它会显示白色图标。
使用此标签并将其放入您的清单中。对我来说这很有效。希望它也对你有用。确保 meta-data 在应用程序内部,如 quickstart
中提到的示例<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
tools:ignore="GoogleAppIndexingWarning">
<!-- [START fcm_default_icon] -->
<!-- Set custom default icon. This is used when no icon is set for incoming notification messages. -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/ic_stat_ic_notification" />
<!-- Set color used with incoming notification messages. This is used when no color is set for the incoming
notification message. -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_color"
android:resource="@color/colorAccent" />
<!-- [END fcm_default_icon] -->
<!-- [START fcm_default_channel] -->
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="@string/default_notification_channel_id" />
<!-- [END fcm_default_channel] -->
<activity
android:name=".EntryChoiceActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".kotlin.MainActivity" />
<activity android:name=".java.MainActivity" />
当没有为传入通知设置图标时,firebase 将采用默认图标并显示通知。
要覆盖默认图标,请将以下代码添加到您的 Android 清单文件中
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/ic_stat_ic_notification" />
更多信息可以关注link
我遇到了同样的问题,并按照此处建议的所有方法进行操作,但没有任何效果。
最终,将 firebase 插件从 11.8.0 降级到 11.6.0 解决了这个问题 github issue。
这也可能对某人有所帮助。
将您的通知保持在 72 x 72 大小,并完全白色。请参阅此答案所附的照片。
然后将下面的代码粘贴到您的清单中。
<meta-data android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/ic_stat_money" />
您可以使用 Android Studio 的默认图标包制作新图标。
为此右键单击您的 drawable 文件夹 > New > Image Asset
唯一对我有用的是在 Android 工作室中 生成一个 通知图标 图像资产。 要使用图像作为通知图标,只需将资产类型设置为“图像”和 select 文件。
提示 #1:在透明背景上使用白色图标!
提示 #2:如果 window 右侧的预览仅包含白色方块,您的通知图标看起来就像那样 - 白色方块!
提示 #3:资产的名称应该添加到 AndroidManifest
中的meta-data
标签中
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/whatever_you_set_for_image_asset_name" />
来源:摘自