【问题标题】:Onesignal fails to deliver test (and any other) notificationOnesignal 未能提供测试(和任何其他)通知
【发布时间】:2023-03-28 09:36:01
【问题描述】:

我想使用 onesignal 将通知发送到没有 onesignal android sdk 创建的已经运行的 android 应用程序。我成功地设置了一个应用程序并向其中添加了一个用户(使用 onesignal rest api)。

当我尝试使用 GCM api 在https://gcm-http.googleapis.com/gcm/send 发送通知时,它会立即成功发送。另一方面,当我尝试从 onesignal 管理员(向具有相同令牌的用户)发送通知时,它没有被传递,但管理仪表板显示成功传递。也不会发送测试通知。有没有办法解决这个问题?

【问题讨论】:

    标签: android google-cloud-messaging onesignal


    【解决方案1】:

    OneSignal 发送的 GCM 有效负载可能与您应用的当前版本所期望的格式不同。 OneSignal的GCM payload如下:

    {
      "alert": "Message Body",
      "title": "Message Title",
      "custom": { 
                 "a": {
                   "customKey": "customValue"
                },
                "i":"22ac4870-c602-4fa0-b85c-400adab80e00"
      }
    }
    

    目前已修复此 OneSignal GCM 格式。我建议将您预期的 GCM 格式添加到您的问题中,并通过指向此线程的链接联系 OneSignal 支持。

    【讨论】:

    • 但是通知至少应该到达,在这一点上我不介意它不会启动应用程序,不是吗?
    • 你能检查那个 logcat 看看你是否得到任何 GCM 条目吗?此外,我建议在您的 GCM BroadcastReceiver 中打印出完整的 GCM 有效负载,以确保您的应用正在获取它。
    猜你喜欢
    • 1970-01-01
    • 2018-03-14
    • 2023-03-03
    • 1970-01-01
    • 2021-09-30
    • 2017-01-23
    • 2017-02-02
    • 2015-03-04
    • 1970-01-01
    相关资源
    最近更新 更多