我想播放音频像whatsapp web推送通知或电报web通知。我已经能够在service worker中收到推送通知,问题是收到推送通知时如何播放音频?
我已经在这里阅读了通知API的文档:https://developer.mozilla.org/en-US/docs/Web/API/notification/sound
根据文档,Notification有参数Sound (Notification. Sound)。
我已经在语法中实现了这个参数:
self.registration.showNotification(title, {
body: body,
icon: icon,
tag:tag,
data: data,
sound: 'http://127.0.0.1/myfolder/audio/alert.mp3'
})
但是在service worker中收到推送消息时仍然无法播放音频,如何播放?
谢谢。
如MDN页面所示:
注意:当前任何浏览器都不支持此属性。
我不知道有任何浏览器供应商计划在这个时候添加支持;通常确定的方法是访问给定浏览器的特性状态页面,看看公共列表中有什么。Chrome和Firefox是与service worker通知最相关的浏览器,官方功能跟踪器托管在
- https://www.chromestatus.com/features
- https://wiki.mozilla.org/Features/Release_Tracking
另一种选择是使用自定义振动模式,这在Chrome for Android版本45中是支持的。
在我们的解决方案中,我们创建了一个Google Chrome扩展,它从Service Worker侦听事件并播放音频。对于Service Worker ->后台脚本通信,我们使用这个"hack":Chrome扩展后台脚本如何与网页Service Worker通信?
也可以直接使用扩展(使用GCM)收听push