我已经写了一个安卓应用程序,现在正在移植到iPhone。Android版本使用广播接收器在设备重启时收到通知,此时它会与我的web服务器进行后台同步。然后它使用闹钟管理器在X分钟内安排另一个通知(其中X是由用户在我的应用程序设置中设置的),这只是执行另一个后台同步。
在iPhone上这是可能的吗?我应该查看哪些API?我在OSX Mountain Lion上使用最新的XCode版本(我想是4.5)编程,主要针对iPhone,但也想要一些在iPad上工作的东西。iPhone 4 (iOS 5.0)和更高版本就可以了,因为我的大多数客户都有较新的设备。
如果不是很明显,我对XCode、Mac、iOS和Objective-C还很陌生(仍然在尝试使用Alt来切换窗口)。
发布于 2012-09-22 05:47:01
这在iPhone上是不可能的--它与苹果的多任务模型不兼容。如果这有助于理解动机,苹果的基本立场是,从电池续航的角度来看,允许应用程序不受限制的后台执行权限将是一个非常糟糕的想法,因为没有实际的方法来确保此类应用程序编写良好。
如果你想让用户知道一些东西,如果他们当前不在线,你需要在启动时同步并使用推送通知。有一些特殊类别的应用程序可以在特定事件(如位置变化、接收VoIP呼叫或播放音频内容)时在严格有限的时间内被唤醒,但列表是严格和有限的。请参阅this document,特别关注“实现长时间运行的后台任务”之后的内容。
https://stackoverflow.com/questions/12538570
复制相似问题