2016-09-20 77 views
3

我不知道是否有任何方法通過編程禁用麥克風(以擺脫背景中的紅色條)?以編程方式禁用麥克風

我使用OpenEars在應用程序中偵聽命令。當我走到背景紅色條出現(這是顯而易見的,因爲麥克風是活躍的)。 問題是即使OpenEars爲suspended,麥克風仍處於活動狀態。爲了避免不必要的問題,我不能stop OpenEars,因爲它最終與我的其他來源混合audioSession。

回答

3

即使麥克風未被應用程序使用,「紅條」也不會消失,除非您明確停止音頻會話。這是Apple已採取的一項安全措施,可以提醒您的應用程序用戶它正在聆聽他們的麥克風,即使您在該時刻沒有對麥克風數據進行任何操作。

如果您使用AUAudioUnit,您可能有一些運氣設置isInputEnabledfalse

+0

我知道它已經在寫「這很明顯,因爲麥克風是活躍的」。所以我的問題是如何禁用麥克風而不停止音頻會話(OpenEars正在這樣做)? – konradowy

+0

@falkon對,我明白你的問題。答案是不可能的。 – JAL

0

我不確定它是否陷入了OpenEars本身的情況,但是當你的應用進入後臺/掛起模式時,你是否試過切換AudioSessionCategory?如果您切換到不允許麥克風輸入的類別,我的猜測是它會阻止麥克風。 然後,您可以在應用程序恢復時重置爲正確的類別。