[英]Receiving push notifications in background iOS
我正在开发一个从Zenpush服务接收推送通知的应用程序。 我设法在Zenpush上设置应用和帐户以发送和接收通知。
当应用程序处于活动状态(已打开)并且我收到通知时 - 一切正常。 我在application:didReceiveRemoteNotification:
处理这个application:didReceiveRemoteNotification:
.
此外,我可以在用户到达时点击通知处理通知,或者从通知中心打开应用程序。
问题是 - 如果应用程序在后台或终止,我无法处理通知。 我一直在努力解决这个问题一个星期了。 我在后台模式下启用了背景提取和远程通知 。 在Scheme I中选中了“由于后台获取事件而启动”。 根据Apple文档和我在StackOverflow上发现的内容,我使用以下方法在后台处理通知: application:didReceiveRemoteNotification:fetchCompletionHandler:
.
无论我在通知中发送什么,都不会调用此方法。 我尝试通过更改某些数据并尝试NSLog来确定这一点。
https://devforums.apple.com/message/873265#873265
我在通知中包含“content-available”:1。
还有什么我想念的吗? 或者也许有一种方法可以获得所有通知,当应用程序处于后台/终止应用程序变为活动时接收器?
Stil无法让应用程序调用application:didReceiveRemoteNotification:fetchCompletionHandler:
我决定调试我从Zenpush收到的确切内容。 事实证明,使用他们的自定义有效负载部分来添加content-available
内容并不是正确的方法。 这样,在asp
对象之后添加content-available
,而不是在asp
对象之内。
我写了关于它的Zenpush支持,如果我得到任何关于如何发送content-available
在asp
里面我可以编辑这个答案
我得到了Zenpush支持的回复。 此功能现已测试,即将推出。
Zenpush为后台服务添加了一个复选框,现在它的工作正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.