OGeek|极客世界-中国程序员成长平台

标题: iOS:App停用后闹钟App如何播放声音? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 18:34
标题: iOS:App停用后闹钟App如何播放声音?

许多闹钟应用在几个小时后设法在锁定屏幕的情况下播放声音(例如:Rise、Wave 闹钟)

您需要做的就是设置闹钟并在应用打开时锁定屏幕,并且在屏幕锁定数小时后闹钟会响起。

我设法弄清楚如何在我的设备被锁定时使用 AVPlayer 播放音频:

  1. 将背景功能设置为音频

  2. 将“应用程序不在后台运行”设置为"is"

  3. 代码:

    do {
        try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
        print("AVAudioSession Category Playback OK")
    do {
        try AVAudioSession.sharedInstance().setActive(true)
        print("AVAudioSession is Active")
        } catch let error as NSError {
            print(error.localizedDescription)
        }
    } catch let error as NSError {
        print(error.localizedDescription)
    }
    

当我尝试设置 NSTimer 或使用 dispatch_after 运行播放我的音频文件并锁定我的 iPhone 的代码时,计时器会很快停止,因为显然应用程序在几秒钟后就处于非事件状态 (但仅当我从主屏幕启动应用程序时,而不是当我从 xcode 运行应用程序时,顺便说一句)

那些闹钟应用程序如何设法延迟音频?



Best Answer-推荐答案


这些应用通过退出多任务模式来实现这一点。如果应用程序选择退出多任务模式,如果应用程序在设备锁定时处于前台,则应用程序不会暂停,因此它们可以在时间到达时播放警报声音。您可以阅读更多 here

关于iOS:App停用后闹钟App如何播放声音?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41624287/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4