确定是否需要调用AudioKit.start()

时间:2018-08-20 04:20:37

标签: swift audiokit

使用AudioKit框架,如何确定start()是否已被调用?另外,如果我在当前应用程序会话期间致电start(),但没有致电stop(),是否存在需要再次致电start()的情况?

我正在构建一个播放大量示例的应用程序,并且我试图避免不必要地多次调用start()

1 个答案:

答案 0 :(得分:1)

查看源代码,我确定您可以使用以下表达式:

if !AudioKit.engine.isRunning {
    try? AudioKit.start()
}

我仍然很好奇为什么调用AudioKit.start()不会检查引擎是否已经在运行。

修改

我还发现,使用以下检查将所有对AKPlayer.play()的调用包装起来很有用,以防止发生此崩溃:Required condition is false: _engine->IsRunning()

if AudioKit.engine.isRunning {
    myAKPlayer.play()
}