AVAudioSession 的 setActive 函数的“notifyOthersOnDeactivation”选项的正确用法是什么?

问题描述 投票:0回答:1

我正在使用此示例代码作为参考,将语音识别器添加到我的应用程序中。

以下功能...

private static func prepareEngine() throws -> (AVAudioEngine, SFSpeechAudioBufferRecognitionRequest) {

包含行:

try audioSession.setActive(true, options: .notifyOthersOnDeactivation)

但是 Apple 的 documentation for

notifyOthersOnDeactivation
指出:

仅在停用音频会话时使用此选项;也就是说,当您将 false 值传递给 setActive(_:options:) 实例方法时。

我想弄清楚这是否是某种未记录的停用audioSession的方式(我对此表示怀疑),或者一般情况下,激活audioSession的应用程序在变得不活动、后台或终止之前或期间的某个时刻应该始终停用。

swift avaudiosession
1个回答
0
投票

此代码与文档相反,并且对于它如何配置会话没有多大意义。但是,它是直接从 Apple 的示例代码复制的。我无法解释为什么苹果要发布与他们的文档直接矛盾的代码。将

.duckOthers
.record
一起使用也违反了文档。我会打开一个反馈要求他们修复文档或示例代码。

© www.soinside.com 2019 - 2024. All rights reserved.