2

我看到像 Facebook 这样的 iOS 应用程序会发送通知,即使应用程序尚未启动。

我需要使用在每个时间间隔执行的计时器来安排一个任务,并且这个任务(应该在同一个应用程序中)应该提供一个NSUserNotificationif 满足某些条件。

即使应用程序没有运行,您如何设置这样的通知?

4

3 回答 3

7

Facebook 应用程序和其他在未启动时发送通知的应用程序通过使用远程通知机制来执行此操作。

要使用它,您需要设置服务器、创建推送证书并为您的首选服务器使用 APNS 库。

在这里查看详细信息:http ://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12

于 2012-12-26T22:56:48.317 回答
2

使用UILocalNotification可以通过本地通知完成计划通知。但是,与推送通知一样,本地通知无法运行代码。他们向用户显示通知,用户可能会或可能不会选择启动您的应用程序作为响应。

如果你想在你的应用程序中按时运行代码,那么你的应用程序必须在后台运行。Apple 将后台应用程序限制为仅用于几个特定目的。如果您的应用不属于这些类别之一,则您的应用无法在后台运行(请参阅 UIBackgroundModes 键)。

当位置发生变化时,重要的位置变化监控可以启动您的应用程序,但这是基于位置而不是基于时间并且无法安排。

于 2012-12-27T00:45:20.520 回答
1

它不能以您认为的方式完成,您(如 Facebook)应该使用 Apple 推送通知服务。

于 2012-12-26T22:54:43.400 回答