Ios Can';当应用程序在后台运行时,无法处理推送通知

Ios Can';当应用程序在后台运行时,无法处理推送通知,ios,objective-c,iphone,push-notification,Ios,Objective C,Iphone,Push Notification,在寻找方法时 application:didReceiveRemoteNotification:fetchCompletionHandler: 说 使用此方法处理应用程序的传入远程通知。与application:DidReceiveMemoteNotify:method不同,该方法仅在应用程序在前台运行时调用,而系统在应用程序在前台或后台运行时调用此方法。此外,如果启用了远程通知后台模式,则系统会启动应用程序(或将其从挂起状态唤醒),并在推送通知到达时将其置于后台状态 我在.plist中设置了

在寻找方法时

application:didReceiveRemoteNotification:fetchCompletionHandler:

使用此方法处理应用程序的传入远程通知。与application:DidReceiveMemoteNotify:method不同,该方法仅在应用程序在前台运行时调用,而系统在应用程序在前台或后台运行时调用此方法。此外,如果启用了远程通知后台模式,则系统会启动应用程序(或将其从挂起状态唤醒),并在推送通知到达时将其置于后台状态

我在.plist中设置了“后台提取”和“远程通知”选项,在方案设置中设置了“由于后台提取事件而启动”选项。 如果我的应用程序运行前台并收到推送,则调用此方法,所有操作似乎都正常。 但当我从xCode运行我的应用程序,然后将其移动到后台模式(通过按home按钮),它在发送push时不会对上述方法中的断点或NSLogs做出反应。系统显示推送通知,但推送到达时,我仍然无法执行某些操作


当应用程序运行后台时,是否可以处理推送通知?

后台提取
和由于后台提取事件而启动的
用于后台提取,而不是推送通知。是,我只是浏览了一下各种选项。在
后台模式
部分有选项
远程通知
。顺便说一句,你的短信中提到了。我忘了说我已经打开了这个选项。如果用户强制退出,系统不会自动启动你的应用。在这种情况下,用户必须重新启动应用程序或重新启动设备,然后系统才会尝试再次自动启动应用程序。此外,在处理推送通知时使用大量电源的应用程序可能不会总是在处理未来通知时提前唤醒。