Gio*_*dze 10 android google-chrome push-notification service-worker
我正在使用service workers. 我需要它来push通知。我想要实现的是,当我收到通知时,它至少应该播放声音或振动。
self.registration.showNotification(title, {
body: body,
icon: './assets/images/icons/icon_144x144.png',
vibrate: [200, 100, 200, 100, 200, 100, 200],
});
Run Code Online (Sandbox Code Playgroud)
收到通知后,我收到了这段代码。
问题1:完全没有振动发生。然后我进行了一些调试。
https://googlechrome.github.io/samples/notifications/vibrate.html这不会使我的手机振动。
https://googlechrome.github.io/samples/vibration/index.html这会使我的手机振动。
为什么它不从第一个链接振动?我正在测试所有这些android chrome。
问题 2:看起来像在 Firefox 上,它确实有默认声音。为什么谷歌没有相同的声音?它只是沉默。没办法播放声音?至少我想振动它...
如此处所示,无论 Chrome 版本如何,从 Android O 开始的 Android 设备都不再支持vibrate属性showNotification(),这可能就是第一个链接对您不起作用的原因。
但是,您可以使用该vibrate()方法(这就是第二个链接所做的),该方法在 32 版之后的 Chrome 版本上受支持。但请注意,在 Chrome 60 之后,该方法仅在响应用户手势时起作用。(请参阅https://developer.mozilla.org/en-US/docs/Web/API/Navigator/vibrate)了解更多详细信息。
在这里添加更多历史记录:
不幸的是,几年前我们不得不弃用这个起始 Android O - 通知通道的引入意味着注意力抽屉(振动、声音等)现在是每个通道而不是每个通知,Chrome 不允许开发人员配置。
不幸的是,其他供应商对解决这个问题的兴趣为零。