当应用程序在后台运行时,无法处理推送通知,接收推送但未点击横幅或警报

时间:2012-07-25 12:10:28

标签: ios notifications push

我已在我的应用程序中实现了推送通知。我已经测试了iPod中的推送消息。结果如下:

测试的场景: 1.应用程序在前端运行,iPod未锁定 - [状态=没问题]

  1. 应用程序在前端运行,iPod锁定 - [状态=没问题]

  2. 应用程序在后台运行,iPod未锁定 - [status = FOUND PROBLEM]未保存在数据库中+没有警报(实际上没有获取任何事件处理程序)

  3. 应用程序在后台运行,iPod已锁定 - 状态=如果我立即打开应用程序没问题,但如果我等待2分钟,那么打开我的应用程序我没有收到消息!

    < / LI>
  4. 应用程序未运行(不在后台+前端),iPod未锁定 - (FOUND PROBLEM)未保存在数据库中+无警报{我可以将推送消息视为警报,但我不知道点击它,我的应用程序然后包含徽章图标,但如果我点击我的应用程序,我没有得到任何推送消息的信息}

  5. 应用程序未运行(不在后台+前端),iPod已锁定 - 如果我立即解锁手机没问题,但如果我等了2分钟,我就丢失了信息!

    < / LI>

    ----------------------------------------------- -------------------------------------------

    如果我总结一下我的问题:我收到所有场景的推送通知,但如果我没有点击警告/横幅,我就无法处理某些场景的通知!出于特殊目的,我希望在所有场景中将消息保存在本地数据库中。

    我在stackoverflow和其他网站上看到了很多链接,但我没有看到有人已经遇到的相同情况!

    我的iPod iOS版本是:5.0

    有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我不确定如何把它放得更好但是:这就是它应该如何运作。

您不能依赖推送通知是通信机制。当您的应用程序启动时,您需要有一种从Web服务查询当前状态的方法。

通知的有效负载中的数据可用作快捷方式或优化,但不能用作刷新机制的替代