c# - .NET MAUI Android 中的通知图标

标签 c# android xamarin maui

我在 .NET MAUI 中遇到推送通知问题。我正在使用 Firebase Cloud Messaging,并且已成功将其集成到我的应用程序中。问题出在通知图标上;当我在使用应用程序时收到通知时,图标会正确显示,但如果我在应用程序关闭时收到通知,图标会显得很小并在一个较大的圆圈内(看起来不太好)。我尝试过使用带有彩色或白色和透明背景的 SVG 和 PNG 文件,但似乎没有任何效果。这就是image我用过。

以下是问题的截图:

应用程序内部: Inside the app

如果我在应用程序中向下滚动: And if I scroll down while in the app

在应用程序外部(关闭时): Outside the app (when closed)

如果我在应用程序关闭时向下滚动: And again, if I scroll down while the app is closed

这些示例是使用名为 small_notification_icon.png 的 PNG 文件制作的,并保存在 Resources/Images 文件夹中,该文件夹仅使用透明背景的白色。这是我使用的代码:

var notificationBuilder = new NotificationCompat.Builder(this, MainActivity.ChannelID)
            .SetSmallIcon(Resource.Drawable.small_notification_icon)
            .SetContentTitle(title)
            .SetContentText(messageBody)
            .SetChannelId(MainActivity.ChannelID)
            .SetPriority((int)NotificationPriority.High);

var notificationManager = NotificationManagerCompat.From(this);
notificationManager.Notify(MainActivity.NotificationID, notificationBuilder.Build());

如果您能提供有关如何解决此问题的帮助或建议,我将不胜感激。

最佳答案

我已经发现了这个问题。当应用程序在后台运行时,从控制台发送的通知使用 list 文件中指定的启动器图标。

要解决此问题,您只需在 Application 标记中插入以下代码即可替换 AndroidManifest 中指定的默认图像。您所需要做的就是用您喜欢的通知图标图像替换 your_favourite_image。

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

这应该可以解决问题并允许您使用首选图像进行通知。

关于c# - .NET MAUI Android 中的通知图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75442117/

相关文章:

c# - 大量警告是否会使 C# 编译时间变长?

c# - 无法使用Docker创建docker文件和Project文件

Android:UI 元素在低分辨率设备中溢出屏幕

c# - 可以ping通网络设备但没有tcp连接

c# - 如何在捕获异常中显示行号和帧?

android - 检测 Android 方向 : landscape-Left v. landscape-Right

android - android maps api V2 是否需要启用后台数据?

xamarin - 当 UIWebView 请求开始加载时,不会调用自定义 UIWebViewDelegate 的 ShouldStartLoad

xamarin - 如何在xamarin表单中设置单选按钮与文本之间的间距

android - Listview Itemclick 事件不触发 android xamarin