使计时器在后台iOS上运行超过3分钟

所以我需要这个应用程序运行超过3分钟的计时器,并播放声音非常45秒,这里的大多数解决scheme只是不到3分钟在iOS上。 除非应用程序停止,否则有办法让它始终运行吗?

经过研究,我猜解决scheme是实现beginBackgroundTaskWithExpirationHandler

并通过在plist上给予一个handler并设置位置更新来停止它?

至于audio,除了放置plist,还有其他什么需要做audio播放?

Swift如何使用NSTimer背景? iphone – NSTimers在后台在后台 运行应用程序超过10分钟

不,为了把我们所有的人都从杀死我们电池的应用程序中拯救出来,苹果不允许应用程序继续在后台运行超过几分钟。 只有非常特殊的限制(音乐播放应用程序,VOIP,导航应用程序等),允许持续的操作。 在细节方面,这在iOS应用程序编程指南的 后台执行章节中有描述

如果您想在将来某个时间通知用户,可以使用本地通知。 当你这样做,但是,你不能控制你的应用程序是否重新启动。 只有当用户点击通知(假设他们甚至授予了您的应用程序通知权限),应用程序才能重新打开。 有关更多信息,请参阅“ 本地和远程通知编程指南”中的本地通知讨论。 但是请注意,这不是为了每45秒发出一次警报,而是为了在未来某个时间安排重要的通知。

有关如何使用计时器与本地通知结婚的讨论,请参阅后台中的“快速NSTimer” ,这个后续问题可以快速计算在后台运行的计时器 。