Javascript 服务人员未在mobile Chrome上注册

Javascript 服务人员未在mobile Chrome上注册,javascript,android,google-chrome,push-notification,Javascript,Android,Google Chrome,Push Notification,我想在桌面和移动设备上为我的域实现推送通知。在桌面上,一切正常,我能够将推送从服务器发送到测试设备 在Android浏览器上,我甚至无法注册服务人员。我已经在OnePlus 3和华为Mate 9上测试了以下代码,它们是最新的功能强大的设备,我实际上在它们上收到了web通知 这是我使用的代码: <script type="text/javascript"> if('serviceWorker' in navigator && 'PushManager' in windo

我想在桌面和移动设备上为我的域实现推送通知。在桌面上,一切正常,我能够将推送从服务器发送到测试设备

在Android浏览器上,我甚至无法注册服务人员。我已经在OnePlus 3和华为Mate 9上测试了以下代码,它们是最新的功能强大的设备,我实际上在它们上收到了web通知

这是我使用的代码:

<script type="text/javascript">
if('serviceWorker' in navigator && 'PushManager' in window) {
    alert('best');
    window.addEventListener('load', function() {
       navigator.serviceWorker.register('/sw.js').then(function(registration) {
          alert('test');
       });
    });
}
</script>

if(导航器中的“serviceWorker”和窗口中的“PushManager”){
警惕(“最佳”);
addEventListener('load',function()){
navigator.serviceWorker.register('/sw.js')。然后(函数(注册){
警报(“测试”);
});
});
}
第一个警报弹出,因此浏览器支持服务人员和推送通知。出于某种原因,第二个在移动chrome上不流行,但在桌面chrome上有效!我错过什么了吗

代码驻留在名为
test.php的页面上


谢谢

更改“/sw.js”。因为如果不使用dot,这意味着位于服务器的根目录中,请不要在文件名之前使用
/
,而只使用文件名
sw.js
。我也有同样的问题,也许会有帮助