【问题标题】:Disabling microphone programmatically以编程方式禁用麦克风
【发布时间】:2016-09-20 13:55:20
【问题描述】:

我想知道是否有任何方法可以通过编程方式禁用麦克风(以消除背景中的红条)?

我使用 OpenEars 来监听应用程序中的命令。当我转到背景时,会出现红色条(这很明显,因为麦克风处于活动状态)。 问题是即使 OpenEars 为suspended,麦克风仍处于活动状态。为避免不必要的问题,我不能stop OpenEars,因为它最终会将audioSession 与我的其他来源混合。

【问题讨论】:

    标签: ios microphone openears


    【解决方案1】:

    “红条”永远不会消失,即使您的应用程序未使用麦克风,除非您明确停止音频会话。这是 Apple 采取的一项安全措施,用于提醒您的应用程序的用户它正在监听他们的麦克风,即使您当时没有对麦克风数据进行任何操作。

    如果您使用的是AUAudioUnit,您可能会有一些运气将isInputEnabled 设置为false

    【讨论】:

    • 我知道它已经写了“这很明显,因为麦克风处于活动状态”。所以我的问题是如何在不停止音频会话的情况下禁用麦克风(OpenEars 正在做什么)?
    • @falkon 对,我理解你的问题。答案是不可能的。
    【解决方案2】:

    我不确定它本身是否属于停止 OpenEars 案例,但您是否尝试过在您的应用程序进入后台/暂停模式时切换 AudioSessionCategory?如果您切换到不允许麦克风输入的类别,我猜它会停止麦克风。 然后,您可以在应用恢复时重置为正确的类别。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-02
      • 1970-01-01
      • 2023-03-29
      • 2012-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多