返回
自定义 Firebase 通知:图像和振动模式的终极指南
Android
2024-03-20 16:13:37
自定义 FCM 通知:图像和振动模式
简介
Firebase 云消息传递 (FCM) 是一种强大的工具,可用于向 Android 和 iOS 设备发送通知。这些通知可以自定义为包含各种信息,包括图像和振动模式。本文将探讨如何通过 FCM 实现这些自定义,解决常见的挑战,并提供最佳实践。
自定义图像
要为 FCM 通知添加图像,我们需要在通知有效负载中设置 "image" 变量。该变量应设置为要显示的图像的名称(不带扩展名),且图像必须包含在 APK 中。以下是配置图像所需的步骤:
- 将图像添加到 APK :确保图像已添加到您的 APK 中,并且路径与 "image" 变量匹配。
- 验证图像格式 :确认图像的格式受 Android 支持,例如 PNG 或 JPEG。
- 检查图像大小 :确保图像的大小不超过 256 KB。
- 设置 "image" 变量 :在您的通知消息中,将 "image" 变量设置为图像的名称(不带扩展名)。
自定义振动模式
FCM 还允许您自定义通知的振动模式。通过设置 "vibrate_timings" 变量,您可以指定振动的持续时间和间隔。要配置振动模式,请按照以下步骤操作:
- 创建振动模式数组 :将 "vibrate_timings" 变量设置为一个字符串数组,其中每个元素表示振动模式中的一个持续时间值。
- 使用正负值 :正数表示振动持续的时间(以毫秒为单位),而负数表示静止的时间(以毫秒为单位)。
- 交替值 :数组中的第一个元素表示初始振动持续时间,后续元素表示振动模式的交替持续时间。
- 示例振动模式 :["0.5s", "-0.2s", "0.1s", "-0.2s"] 表示振动 500 毫秒,静止 200 毫秒,振动 100 毫秒,然后静止 200 毫秒的模式。
示例有效负载
以下是一个示例 JSON 有效负载,演示了如何添加图像和自定义振动模式:
{
"validate_only":false,
"message":{
"data":null,
"android":{
"collapse_key":"new_messages",
"priority":1,
"restricted_package_name":"",
"data":{
},
"notification":{
"title":"A spoon is ready!",
"body":"Grab it before someone else!",
"icon":"spoonsbuzz",
"channel_id":"cow",
"color":"#0000FF",
"sound":"cow.wav",
"vibrate_timings":[
"0.5s",
"-0.2s",
"0.1s",
"-0.2s"
],
"visibility":2,
"tag":"new_messages",
"click_action":"",
"body_loc_key":"",
"body_loc_args":[
],
"title_loc_key":"",
"title_loc_args":[
],
"image":"spoonsbuzzimage",
"notification_priority":4
}
},
"apns":null,
"token":"Bot"
}
}
常见问题解答
1. 图像未显示
- 确保图像已添加到 APK 中,并且路径正确。
- 验证图像的格式是否受 Android 支持,并且大小不超过 256 KB。
2. 振动模式不起作用
- 检查振动模式的格式是否正确,并且振动时间和间隔值是正值或负值。
- 确认您的设备支持自定义振动模式。
3. 图像和振动模式仅在某些设备上可见
- 自定义图像和振动模式可能在某些 Android 版本或设备上不可用。
- 验证您的目标设备是否兼容这些功能。
4. 使用不同语言显示通知
- 要使用不同语言显示通知,请设置 "body_loc_key" 和 "body_loc_args" 或 "title_loc_key" 和 "title_loc_args" 字段。
5. 使用 FCM 测试工具
- FCM 提供了一个测试工具,可以帮助您验证通知是否按预期工作。