我想知道是否有任何方法可以以编程方式禁用麦克风(摆脱背景中的红条)?
我使用 OpenEars 来监听应用程序中的命令。当我转到背景时,会出现红色条(这很明显,因为麦克风处于活动状态)。问题是即使 OpenEars 处于活动状态,麦克风也处于活动状态suspended
。为了避免不必要的问题,我不能stop
OpenEars,因为它最终会将 audioSession 与我的其他来源混合。
我想知道是否有任何方法可以以编程方式禁用麦克风(摆脱背景中的红条)?
我使用 OpenEars 来监听应用程序中的命令。当我转到背景时,会出现红色条(这很明显,因为麦克风处于活动状态)。问题是即使 OpenEars 处于活动状态,麦克风也处于活动状态suspended
。为了避免不必要的问题,我不能stop
OpenEars,因为它最终会将 audioSession 与我的其他来源混合。
“红条”永远不会消失,即使您的应用程序未使用麦克风,除非您明确停止音频会话。这是 Apple 采取的一项安全措施,用于提醒您的应用程序的用户它正在监听他们的麦克风,即使您当时没有对麦克风数据做任何事情。
如果您正在使用AUAudioUnit
,您可能会有一些运气设置isInputEnabled
为false
.
我不确定它本身是否属于停止 OpenEars 案例,但是当您的应用程序进入后台/暂停模式时,您是否尝试过切换 AudioSessionCategory?如果您切换到不允许麦克风输入的类别,我猜它会停止麦克风。然后,当您的应用恢复时,您可以重置为正确的类别。