使用AudioKit框架,如何确定start()
是否已被调用?另外,如果我在当前应用程序会话期间致电start()
,但没有致电stop()
,是否存在需要再次致电start()
的情况?
我正在构建一个播放大量示例的应用程序,并且我试图避免不必要地多次调用start()
。
答案 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()
}