设置不同的声音通知
Set different sound notification
我有一个设备令牌池(iOS 和 Android),在 docs 中,我发现两个平台只有一个参数 sound
,显然我有 2 种不同的通知声音,一种用于 Android,另一种用于 iOS。
我是否必须按设备类型拆分设备令牌才能发送到 2 种不同的设备类型?还是我错过了什么?
谢谢。
你错过了什么,
A- 如果你想允许用户在任何设备上select他喜欢的通知声音所以
- 不发送通知
- 只发送数据强制接收内容通过onReceive事件
- 在接收时将声音、图标和数据添加到通知生成器中。
B- 如果您希望应用使用默认声音
因此在通知正文中设置声音:'default' 它适用于所有类型的设备
解决方案 1
您可以将两个音频文件命名为相同的名称,例如 'your_app.mp3'。
名称相同,但每个应用程序中的音乐文件不同。这不允许用户选择通知声音,但至少允许每个应用程序有不同的声音。
解决方案 2
迁移到新的 Firebase HTTP v1 API which allows you to customize notifications across platforms
个人经历
@daniel-raouf 提出的发送数据消息的解决方案很棒;但根据我的经验,某些数据消息在以下情况下无法传送给您的用户:
一位用户在他的 phone 上设置了省电模式(默认情况下是华为、小米、一加...)
当 iOS 用户从最近的应用程序(多任务)中清除您的应用程序时。
因此,在我看来,数据消息并不是一个可靠的通知解决方案。
我有一个设备令牌池(iOS 和 Android),在 docs 中,我发现两个平台只有一个参数 sound
,显然我有 2 种不同的通知声音,一种用于 Android,另一种用于 iOS。
我是否必须按设备类型拆分设备令牌才能发送到 2 种不同的设备类型?还是我错过了什么?
谢谢。
你错过了什么,
A- 如果你想允许用户在任何设备上select他喜欢的通知声音所以
- 不发送通知
- 只发送数据强制接收内容通过onReceive事件
- 在接收时将声音、图标和数据添加到通知生成器中。
B- 如果您希望应用使用默认声音
因此在通知正文中设置声音:'default' 它适用于所有类型的设备
解决方案 1
您可以将两个音频文件命名为相同的名称,例如 'your_app.mp3'。
名称相同,但每个应用程序中的音乐文件不同。这不允许用户选择通知声音,但至少允许每个应用程序有不同的声音。
解决方案 2
迁移到新的 Firebase HTTP v1 API which allows you to customize notifications across platforms
个人经历
@daniel-raouf 提出的发送数据消息的解决方案很棒;但根据我的经验,某些数据消息在以下情况下无法传送给您的用户:
一位用户在他的 phone 上设置了省电模式(默认情况下是华为、小米、一加...)
当 iOS 用户从最近的应用程序(多任务)中清除您的应用程序时。
因此,在我看来,数据消息并不是一个可靠的通知解决方案。