安排任务在iOS应用程序处于后台状态时的特定时间运行

安排任务在iOS应用程序处于后台状态时的特定时间运行,ios,Ios,问题: 我希望在特定的时钟时间运行特定的代码,即使应用程序处于后台状态 尝试的方法: 我尝试使用NSTimer,但当应用程序进入后台状态时,NSTimer会暂停。 我不使用后台获取方法,因为在我希望代码执行之前,还有很长时间。 我见过一个第三方iOS闹钟应用程序,当闹钟响起时开始播放音乐。根据我的研究,你无法在像Android这样的iOS系统中安排任务。我想知道实现这种功能的解决方案 如果您对这个话题有任何建议和想法,我将不胜感激。谢谢。唯一的方法-静默远程通知 这将在后台唤醒您的应用程序,您可

问题:

我希望在特定的时钟时间运行特定的代码,即使应用程序处于后台状态

尝试的方法:

我尝试使用NSTimer,但当应用程序进入后台状态时,NSTimer会暂停。 我不使用后台获取方法,因为在我希望代码执行之前,还有很长时间。 我见过一个第三方iOS闹钟应用程序,当闹钟响起时开始播放音乐。根据我的研究,你无法在像Android这样的iOS系统中安排任务。我想知道实现这种功能的解决方案

如果您对这个话题有任何建议和想法,我将不胜感激。谢谢。

唯一的方法-静默远程通知

这将在后台唤醒您的应用程序,您可以在应用程序中捕获通知application:UIApplication,didFinishLaunchingWithOptions launchOptions:[UIApplication.LaunchOptionKey:Any]?方法

像这样的

if launchOptions != nil,
        let userInfo = launchOptions?[UIApplication.LaunchOptionsKey.remoteNotification] as? [AnyHashable : Any] {
        // put your method here..
    }

有关静默通知的更多信息-

您可以使用静默推送通知执行此操作,但仍然无法确定用户是否会收到推送通知。 另一个选项是调度本地通知,但如果用户未单击本地通知或应用程序未打开,则无法从本地通知执行代码。 无法保证代码将在准确的时间内执行。
你的问题听起来像这样

当你的应用程序在后台时,你为什么需要运行代码?下次用户打开您的应用程序时执行此操作app@LeoDabus我想在用户设定的时间播放音乐。谢谢回复。如果通知被禁用,应用程序是否会收到此回调?否。。。应启用通知。您需要用户的许可。我上面提到的第三方应用程序能够在触发报警时播放音乐,即使通知被禁用。还有其他关于此应用程序如何在后台播放音乐的想法吗?您是否也可以共享您引用的应用程序URL?链接: