【问题标题】:It is possible to process remote notifications and avoid showing it to the user?可以处理远程通知并避免向用户显示吗?
【发布时间】:2016-09-07 07:41:27
【问题描述】:

我在 iOS 中有一个应用程序,它通过 GCM (Google Cloud Messaging) 和 APNS 接收推送通知。这些通知包含一些在向用户显示任何内容之前必须处理的数据。

数据处理后,我会生成一个本地通知,其中包含适当的信息给用户。

我看到了这种行为:

  • 应用在前台时,我只能看到本地通知。
  • 应用在后台时,我可以同时看到远程和本地通知。
  • 即使应用程序未运行,也不会显示任何通知。

我可以在处理一些数据后只显示我的本地通知吗? (至少当应用在后台时)

我已经阅读了有关使用内容可用属性的信息,如 here 所述,但行为几乎相同。

【问题讨论】:

标签: ios push-notification google-cloud-messaging apple-push-notifications


【解决方案1】:

终于我得到了解决方案(感谢@DmytroShvecov 提供的指针)。

需要按照官方文档here在服务器中按照以下步骤操作:

  • aps 内包含键 alertbadgesound,但值为空白。
  • 包含 content-available 键和 1 作为值(如果您希望在后台处理通知而不与用户交互。
  • 将任何acme 键包含在您的数据中,以将其视为自定义负载。

这是所有东西协同工作的一个例子:

{
  "aps": {
    "alert": "",
    "badge" : "",
    "sound":"",
    "content-available": 1
  },
  "acme": {
    "what": "ever",
    "you": "want"
  }
}

【讨论】:

    猜你喜欢
    • 2019-02-17
    • 2017-05-30
    • 2012-12-12
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 2014-12-02
    • 1970-01-01
    相关资源
    最近更新 更多