2016-09-20 10 views
3

マイクをプログラムで無効にする方法があるのでしょうか(バックグラウンドで赤いバーを取り除くために)?マイクをプログラムで無効にする

私はOpenEarsを使ってアプリケーションのコマンドを聞きます。背景に行くと、赤いバーが表示されます(マイクがアクティブなので、明白です)。 問題は、OpenEarsがsuspendedであっても、マイクがアクティブであることです。不必要な質問を避けるために、私はstop OpenEarsを使って、他のソースとaudioSessionをミキシングすることはできません。

答えて

3

オーディオセッションを明示的に停止しない限り、マイクがアプリケーションで使用されていなくても、「赤いバー」は消えません。この瞬間にマイクのデータで何もしていない場合でも、アプリケーションのユーザーに自分のマイクを聴いていることを知らせるためにAppleが講じたセキュリティ対策です。

AUAudioUnitを使用している場合は、運がisInputEnabledからfalseに設定されている可能性があります。

+0

私はすでに「マイクがアクティブであるので、明らかです」と書いていました。だから私の質問は、オーディオセッション(OpenEarsがやっている)を止めずにマイクを無効にする方法でした。 – konradowy

+0

@falkonそうですね、私はあなたの質問を理解しています。答えは不可能だということです。 – JAL

0

OpenEarsケースそのものに入るかどうかは分かりませんが、アプリがバックグラウンド/サスペンドモードになったときにAudioSessionCategoryを切り替えてみましたか?マイク入力が許可されていないカテゴリに切り替えると、マイクを停止することになります。 その後、アプリの再開時に正しいカテゴリにリセットすることができます。

関連する問題