如何制作即使应用程序处于后台模式也可以运行的计时器应用程序

问题描述:

我有一个简单的计时器应用程序,我需要它在使用其他系统应用程序(如iBooks)时工作并发送声音信号。但是当我按Home按钮并且应用程序进入后台模式时,它似乎暂停。当我将View Controller带回时,定时器和声音恢复。解决这个问题的正确方法是什么?如何制作即使应用程序处于后台模式也可以运行的计时器应用程序

+0

应用程序不能在后台运行。在后台使用定时器是不可能的。您最好选择它来安排位置通知,而不是使用时间。如果您的应用程序正在运行,您可以处理本地通知。如果您的应用程序在后台运行,用户将会收到通知。 – rckoenes

+0

我滥用了这个词。我需要它运行并发送信号时使用其他应用程序,如iBooks。 –

+0

首先,您将无法检测是否有其他应用程序启动,因为这是违反隐私的。如果您要通过AppStore部署您的应用,Apple不会允许它。 – rckoenes

如果您的应用需要添加背景模式配件附件的应用程序。

您可以从目标中的功能选项卡执行此操作。 如果您确实使用此选项,并且Apple发现您未使用外部附件进行粉刷,则您的应用程序将被拒绝。除非他们要么VOIP,AudioStreamer,基于地址或附件应用

External accessory communication option ins capabilities

我建议您看看UILocalNotification(UNNotificationRequest仅适用于您的iOS 10)。

当您的应用程序正在运行时,您只需注册一个UILocalNotification以在设定的日期和时间触发。当您的应用处于前台,后台或完全从多任务处理中移除时,这仍然会触发。

退房这里的文档:

https://developer.apple.com/reference/uikit/uilocalnotification