【问题标题】:iOS 7 remote notification background modeiOS 7 远程通知后台模式
【发布时间】:2014-02-07 15:59:05
【问题描述】:

我真的对这个问题感到困惑,我的问题很简单:application: didReceiveRemoteNotification: fetchCompletionHandler: 什么时候会被调用?

  1. 如果应用程序正在运行并且在前台?我测试了,iOS 7 的响应是 yes,iOS 6 的响应是 no,如函数注释中所述。

  2. 如果应用程序在后台运行?响应:同 1。

  3. 如果应用程序在后台但被系统挂起?

  4. 最重要的一点:如果应用程序被终止(不在“多任务视图”中)?

我如何激活/处理通知:

  1. 在 xcode 功能部分(在 info.plist 中)添加远程主题。
  2. 要求注册:

[[UIApplication sharedApplication] registerForRemoteNotificationTypes: UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeNewsstandContentAvailability]

3 .实现委托方法。 (在completionHandler(UIBackgroundFetchResultNewData);里面加)

当我发送通知时(使用内容可用键==1):

  1. 如果应用程序处于前台/后台并触发该功能运行并执行内部代码(我下载图像并将其保存在文档文件夹中)。
  2. 如果应用被杀死,图像不会被下载。

第二个问题:为什么要调试远程通知后台模式?

[edit] 测试后,如果应用程序被挂起(我们添加一个循环来记录日期)它会收到通知并尝试触发代码,但应用程序在 1 秒后停止,我们是否错过了一个包含持续时间的参数? (我读到的最大值是 30 秒)。

【问题讨论】:

  • 阅读您的问题有点困难,因为您在该帖子中嵌套了许多其他问题。有没有办法可以简化这个
  • 你可以阅读这个samwize.com/2015/08/07/…

标签: ios7 background push-notification apple-push-notifications


【解决方案1】:

很抱歉回答我自己的问题, 简单来说,远程通知仅在应用程序处于后台(活动/暂停)时处理。

[编辑]:如果您想要一个推送通知来唤醒应用程序,即使它被杀死,请查看 PushKit,但这只有在您的应用程序中具有 VOiP 功能时才有可能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-28
    • 2020-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多