OneSignal hello-world网页 - 没有通知

时间:2016-09-21 23:27:54

标签: javascript google-chrome ssl google-cloud-messaging onesignal

我花了很长时间才看到这个看似非常简单的问题,进展为0。在这一点上我非常绝望,所以如果有人能够回顾我写的那个简短的例子,我将非常感激。

我正在尝试做什么:使用OneSignal的Web Push SDK发送推送通知。

~/Desktop/OneSignal-Browser-Example中的文件:

的index.html

<head>
    <title>OneSignal Example</title>
    <link rel="manifest" href="/manifest.json">
    <script src="https://cdn.onesignal.com/sdks/OneSignalSDK.js" async></script>
    <script>
        var OneSignal = window.OneSignal || [];
        OneSignal.push(["init", {
          appId: "518e60ef-8b73-4852-8172-61cb170dce00",
          autoRegister: true,
          notifyButton: {
            enable: true /* Set to false to hide */
          }
        }]);
        console.log("Test");
    </script>
    <h1>LOADED</h1>
</head>

的manifest.json

{
  "name": "OneSignal Example",
  "short_name": "OneSignalExample",
  "start_url": "/",
  "display": "standalone",
  "gcm_sender_id": "482941778795"
}

OneSignalSDKWorker.js

importScripts('https://cdn.onesignal.com/sdks/OneSignalSDK.js');

OneSignalSDKUpdaterWorker.js

importScripts('https://cdn.onesignal.com/sdks/OneSignalSDK.js');

cert.pem

key.pem

我使用/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --ignore-certificate-errors启动了Google Chrome,并使用http-server --ssl --p 8081 ~/Desktop/OneSignal-Browser-Example在端口8081上设置了https服务器。

附件是跟踪日志的屏幕截图。

trace log image

1 个答案:

答案 0 :(得分:1)

我认为我们能够通过我们的支持渠道帮助您解决问题。

问题是特定的配置不匹配:uPaymeiFixit已将manifest.json文件的gcm_sender_id属性修改为不正确的值;他在此次更改后订阅并向用户注册了一个不匹配的GCM发件人ID,即使其他所有内容都正确,也无法发送通知。

这个问题的解决方案是:

  1. Correct gcm_sender_id值。
  2. Reset his site data and cache再次作为新用户进行测试。
  3. 他能够在这些变化后立即收到通知。