设置不同的声音通知

Set different sound notification

我有一个设备令牌池(iOS 和 Android),在 docs 中,我发现两个平台只有一个参数 sound,显然我有 2 种不同的通知声音,一种用于 Android,另一种用于 iOS。

我是否必须按设备类型拆分设备令牌才能发送到 2 种不同的设备类型?还是我错过了什么?

谢谢。

你错过了什么,

A- 如果你想允许用户在任何设备上select他喜欢的通知声音所以

  1. 不发送通知
  2. 只发送数据强制接收内容通过onReceive事件
  3. 在接收时将声音、图标和数据添加到通知生成器中。

B- 如果您希望应用使用默认声音

因此在通知正文中设置声音:'default' 它适用于所有类型的设备

解决方案 1

您可以将两个音频文件命名为相同的名称,例如 'your_app.mp3'。

名称相同,但每个应用程序中的音乐文件不同。这不允许用户选择通知声音,但至少允许每个应用程序有不同的声音。

解决方案 2

迁移到新的 Firebase HTTP v1 API which allows you to customize notifications across platforms

个人经历

@daniel-raouf 提出的发送数据消息的解决方案很棒;但根据我的经验,某些数据消息在以下情况下无法传送给您的用户:

  1. 一位用户在他的 phone 上设置了省电模式(默认情况下是华为、小米、一加...)

  2. 当 iOS 用户从最近的应用程序(多任务)中清除您的应用程序时。

因此,在我看来,数据消息并不是一个可靠的通知解决方案。