iOS8 - 在有效负载中添加 "sound"属性之前,静默推送通知不起作用

标签 ios apple-push-notifications

我有一个启用了推送通知的应用程序。我添加了后台模式,为两个 iOS 版本添加了注册逻辑,它们应该可以正常工作。 在 iOS7 中,这按预期工作(应用程序“唤醒”并获取数据):

"customJson":{ },
"aps":{"content-available":1}

在 iOS8 中做同样的事情我必须添加空声音,否则 didReceiveRemoteNotification: fetchCompletionHandler: 方法未执行:

"customJson":{ },
"aps":{"content-available":1,sound:""}

对于注册,我使用 this 中的解决方法问题。 为什么会这样,有什么想法吗?

最佳答案

之前遇到过同样的问题,这似乎是静默推送通知的错误。我加了

sound:""

就像您所做的那样,它奏效了。

我学到的是,当用户退出应用程序时(通过在任务管理器上滑动终止),系统不会处理静默通知: https://developer.apple.com/library/prerelease/ios/documentation/UIKit/Reference/UIApplicationDelegate_Protocol/index.html#//apple_ref/occ/intfm/UIApplicationDelegate/application:didReceiveRemoteNotification:fetchCompletionHandler : 因此,如果用户终止了该应用程序,它就不应再在后台执行任何操作。从用户的角度来看,这是有道理的。

关于iOS8 - 在有效负载中添加 "sound"属性之前,静默推送通知不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25891323/

相关文章:

ios - UITextFieldDelegate 和整行删除

iOS APN 角标(Badge)最多只能有 3 个

ios - Ruby apns gem 返回 nil

ios - 将数值数组的特定索引与 Swift 中的 Int 变量进行比较

ios - ios 9.3.1 上 phonegap 应用程序中的 iframe

ios - react 原生 iOS : How to determine that the Switch Control accessibility feature is enabled?

ios - 可以使用 HKWorkoutBuilder 对象在 iPhone(没有配对的 watch )中收集锻炼数据吗?

ios - 使用 firebase 和 Objective C 不接收推送通知

php - APNS 自定义声音

iOS 8 通知操作 : "Access to item attempted while keychain is locked" error when accessing keychain in "didFinishLaunchingWithOptions"