0

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

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

我看到这种行为:

  • 随着前台应用程序我只看到本地通知。
  • 随着应用程序在后台我看到两个通知,远程和本地。
  • 即使应用程序没有运行,也不会显示通知。

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

我已阅读有关使用内容可用属性记录here,但行为几乎相同。

+1

是的,你可以 看看这里:。http://stackoverflow.com/questions/20741618/didreceiveremotenotificationfetchcompletionha ndler - 不存在所谓的 - 当应用程序内,是 –

回答

0

最后我得到了解决方案(感谢@DmytroShvecov的指针)。

有必要按照官方文档here并按照服务器下列步骤操作:

  • 包括内部apsalertbadgesound但空值。
  • 包括与1作为价值content-available键(如果你想你的通知,在后台进行处理,而无需用户交互。
  • 包括任何acme键被视为自定义负载与您的数据。

这是一切合作的例子:

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