我正在使用parse.com作为我正在构建的测试应用程序的APNs提供程序。我已经确认推送通知正在工作,因为我已经能够在应用处于前台时成功接收提醒。此外,我有我的plist中指定的UIBackgroundModes
密钥的remote-notification
值。后台中的Apple推送通知
在我的应用程序中,我希望在收到推送通知时将用户的当前位置数据发回给我的特定于应用程序的parse.com数据库。我实际上并不关心通知有效载荷本身,因为通知只是获取一小段信息的一种手段。该应用程序不断在后台收集数据并将其存储在持久的NSDictionary
中。
我已经把位置发送代码放在application:didReceiveRemoteNotification:
方法中。如果我的应用在我收到通知时处于前台,该方法会被调用。如果我的应用程序在后台,该方法不会被调用。
- 我做错了什么?
- 它甚至有可能当应用程序在后台运行,并且用户还没有与通知互动中
application:didReceiveRemoteNotification:
执行API请求**
编辑:的问题依然存在,甚至当我使用application:didReceiveRemoteNotification:fetchCompletionHandler:
。
注意:我的NSDictionary充满了位置数据不是空的。另外,我并不试图在后台执行任何UI操作 - 只是尝试执行API请求。
工作!我在AppDelegate中打开了'content-available'标志,但没有在我的JSON APN中推送该标志。谢谢,亚历克斯!这解决了这个问题。 – ArtSabintsev
哈,奇怪。它只有一次工作。将调查并回复给你 – ArtSabintsev
没关系,让它工作!这只是从解析中接收数据的延迟。 – ArtSabintsev