我正在从 firebase 向我的 Android 应用程序发送推送通知。但是当我的应用程序处于后台时,不会调用 firebase onMessageReceived 方法,而是 firebase 向系统发送通知以在系统托盘中显示通知。
通知出现在系统托盘中,但没有通知声音,即使我在系统设置中允许我的应用程序发出通知声音。
当从 firebase 收到通知时,我可以做什么来播放通知声音。
这就是我从 firebase 向我的应用程序发送通知的方式博文链接 http://developine.com/firebase-cloud-messaging-push-notification-android-tutorial/.
如何在 Android 应用程序中添加 firebase http://developine.com/firebase-cloud-messaging-push-notification-android-tutorial/
在通知的通知负载中,有一个声音键。
从官方文档来看它的用法是:
指示设备收到通知时播放的声音。
支持默认或捆绑在声音资源中的文件名
应用程序。声音文件必须位于 /res/raw/ 中。
Eg:
{
"to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
"notification" : {
"body" : "great match!",
"title" : "Portugal vs. Denmark",
"icon" : "myicon",
"sound" : "mySound"
}
}
如果你想使用设备的默认声音,你应该使用:"sound": "default"
.
有关有效负载中所有可能的键,请参阅此链接:https://firebase.google.com/docs/cloud-messaging/http-server-ref#notification-payload-support https://firebase.google.com/docs/cloud-messaging/http-server-ref#notification-payload-support
对于那些不知道当应用程序处于后台时 Firebase 以不同方式处理通知的人。在这种情况下,不会调用 onMessageReceived 函数。
当您的应用程序在后台运行时,Android 会发出通知
消息到系统托盘。用户点击通知会打开
默认情况下应用程序启动器。这包括包含以下两者的消息
通知和数据负载。在这些情况下,通知是
传送到设备的系统托盘,数据有效负载为
在启动器活动的意图的附加内容中传递。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)