推送通知图标的最佳实践
- 使用透明 PNG 以在所有设备上获得更好的渲染效果。
- 确保图标简单且在较小尺寸下可识别。
- 遵循特定平台的大小和颜色方案指南(例如,Android 状态栏使用透明背景上的白色图标)。
- 避免在图标中使用文本,因为在较小尺寸下可能无法辨认。
- 包含精心设计的推送通知图标可以显著增强通知的有效性和吸引力。
网页通知图标
推荐大小为256x256
像素。支持文件类型 PNG、JPG 和 GIF(非动画)。
在您的仪表板网页设置中上传您的图标或使用图像的 URL。
iOS 通知图标
iOS 通知使用与您的应用程序图标相同的图像,除非更改应用程序图标,否则无法更改。 iOS 还支持通信通知,允许您将图标更改为用户的个人资料图像。Android 通知图标
Android(包括 Amazon 和 Huawei)提供多种设置图标的选项,本指南将详细介绍。 Android 还支持对话通知,允许您将图标更改为用户的个人资料图像。 Android 支持小型和大型通知图标。
小型通知图标
小图标显示在通知的左上角。默认情况下,OneSignal 将显示铃铛图标,但我们建议您自定义此图标,以便订阅者识别这是来自您应用的通知。大多数 Android 设备仅支持图标的 Alpha 通道。 它将在状态栏中显示为单色,但可以将强调色应用到通知本身的左侧。
大型通知图标
大型通知图标显示在通知的右侧。如果您没有设置大图标,将使用小图标代替。OneSignal 将为您自动缩放大型通知图标,以防止图标被裁剪。推荐的大图标尺寸为256x256
像素。
如何添加 Android 默认图标
我们强烈建议为每个 Android 和 Amazon 应用添加默认图标。1
生成图标
您必须添加每个具有列出大小和 Alpha 透明度的图像。有关生成具有 Alpha 透明度的图像的帮助,请参阅此Android Asset Studio 中示例的剪贴画链接。
- 使用 Android 资产工作室
- 手动创建图标
推荐为了快速轻松地生成具有正确设置的小图标,我们建议使用 Android Asset Studio。使用
ic_stat_onesignal_default
作为名称。默认图标名称、密度、大小
必需:每个名称和像素大小都必须在应用中存在。Name | Density (dp) | Size (px) |
---|---|---|
ic_stat_onesignal_default | MDPI | 24x24 |
ic_stat_onesignal_default | HDPI | 36x36 |
ic_stat_onesignal_default | XHDPI | 48x48 |
ic_stat_onesignal_default | XXHDPI | 72x72 |
ic_stat_onesignal_default | XXXHDPI | 96x96 |
ic_onesignal_large_icon_default.png | XXXHDPI | 256x256 |
2
创建项目路径
确保以下路径存在;创建您缺少的任何文件夹。必需:每个图像都必须存在于以下路径中:
- Android 原生
- Unity
- Cordova/Ionic
- React Native
- .NET Maui
- Flutter
res/drawable-mdpi/
(24x24)res/drawable-hdpi/
(36x36)res/drawable-xhdpi/
(48x48)res/drawable-xxhdpi/
(72x72)res/drawable-xxxhdpi/
(96x96)res/drawable-xxxhdpi/
(256x256) (Large Icon)
对于 7.0 之前版本的 Cordova,您需要在向
config.xml
添加图标资源时使用 <project-root>/platforms/android/res/drawable-{size}/
而不是上面显示的路径如果您看到默认的 OneSignal 铃铛图标,说明您没有添加所有图标大小。请添加所有图标大小和正确的路径。如果您看到实心正方形,说明您将图像设置为正确路径,但图像没有 Alpha 透明度。有关更多帮助,请尝试使用来自此 Android Asset Studio 剪贴画 的图像。

您应该已经完成了新的默认图标的设置。
非默认图标
如何使用非默认图标发送推送(可选)
如何使用非默认图标发送推送(可选)
添加默认图标后,您可以选择添加更多非默认图标。这将允许您根据应用发送的通知类型显示不同的图标。例如,标题为”Jewel Breaker”的游戏可能希望为每个发送的通知使用不同颜色的宝石图标来代表用户的级别。同时,社交网络可能希望在用户收到来自其他用户的消息时显示聊天气泡图标,以区别于更通用的系统通知。OneSignal 支持在每条消息的基础上覆盖默认图标。
1
生成图标
按照上述步骤生成图标并将其放置在适合您 SDK 的文件夹中。
2
命名非默认图标
要添加非默认图标,您必须为它们命名与上面指定的默认名称不同的名称。例如,您可以将一个命名为
message_icon
。3
使用非默认图标发送通知
如果您已按照上述步骤创建默认图标并已更新您的应用程序,您将能够在发送通知时引用这些图标。要使用自定义图标发送通知:
Dashboard
导航到消息 > 新推送 > 平台设置 > Google Android 选项 > 设置图标名称(不包括文件扩展名)。对于大型通知图标,您还可以提供显示图标的 URL。
REST API
使用small_icon
和 large_icon
REST API 属性设置通知图标。设置图标名称(不包括文件扩展名)。更多详细信息请参阅创建通知 REST API 文档。小图标强调色
您可以更改通知小图标周围显示的颜色。
设置小图标强调色
要设置默认颜色,请在项目的res/values/strings.xml
文件中添加以下行。
如果您希望深色模式使用不同的颜色,也请将键添加到您的 res/values-night/strings.xml
中。
使用 HEX 值。使用 Android Asset Studio 颜色方案获得帮助。
android_accent_color
,或在消息 > 新推送 > 平台设置 > Google Android 选项下的强调色字段中输入值。

如果您最近刚向应用添加了图标资源,您可能希望等待几天后再发送使用该图标的通知。这是因为大多数用户更新到包含您新图标的最新版本可能需要很多天甚至几周的时间。