2016-09-20 11 views
3

Ich frage mich, ob es eine Möglichkeit gibt, Mikrofon programmgesteuert zu deaktivieren (um den roten Balken im Hintergrund loszuwerden)?Mikrofon programmgesteuert deaktivieren

Ich benutze OpenEars, um auf Befehle in der App zu hören. Wenn ich in den Hintergrund gehe, erscheint ein roter Balken (was offensichtlich ist, da das Mikrofon aktiv ist). Das Problem ist, dass das Mikrofon aktiv ist, selbst wenn OpenEars suspended ist. Um unnötige Fragen zu vermeiden, kann ich nicht OpenSars stop, da es endet mit Mischen audioSession mit meinen anderen Quellen.

Antwort

3

Der "rote Balken" wird niemals verschwinden, auch wenn das Mikrofon nicht von Ihrer Anwendung verwendet wird, es sei denn, Sie beenden explizit die Audiositzung. Dies ist eine Sicherheitsmaßnahme, die Apple eingerichtet hat, um Benutzer Ihrer Anwendung darauf aufmerksam zu machen, dass sie ihr Mikrofon abhören, auch wenn Sie in diesem Moment nichts mit den Mikrofondaten machen.

Wenn Sie AUAudioUnit verwenden, haben Sie möglicherweise Glück, isInputEnabled auf false zu setzen.

+0

Ich wusste es bereits "was offensichtlich ist, wie Mikrofon aktiv ist". Meine Frage war also, wie man das Mikrofon deaktiviert, ohne die Audiositzung zu stoppen (was macht OpenEars)? – konradowy

+0

@falkon Richtig, ich verstehe deine Frage. Die Antwort ist, dass es nicht möglich ist. – JAL

0

Ich bin mir nicht sicher, ob es den Fall von OpenEars per se stört, aber hast du versucht, AudioSessionCategory zu wechseln, wenn deine App in den Hintergrund/Suspend-Modus wechselt? Wenn Sie zu einer Kategorie wechseln, die keine Mikrofoneingabe zulässt, würde ich vermuten, dass das Mikrofon gestoppt wird. Dann könnten Sie auf die korrekte Kategorie zurücksetzen, wenn Ihre App fortfährt.

Verwandte Themen