【问题标题】:how to find out if audio session is active in iOS如何确定 iOS 中的音频会话是否处于活动状态
【发布时间】:2011-11-30 12:08:58
【问题描述】:

我使用AudioSessionSetActive(true) 和AudioSessionSetActive(false) 在我的iOS 应用程序中将AudioSession 设置为true 或false。 在任何时候,我都想知道会话是否处于活动状态。有没有办法做到这一点?

【问题讨论】:

    标签: ios session-state audiosession audiosessionservices


    【解决方案1】:

    刚刚遇到同样的事情!没有用于查询会话是否处于活动状态的 AudioSessionProperty 键。我相信这是另一个设置它并忘记它的交易,Apple 认为应用程序应该以某种方式运行。例如。大多数应用程序不需要知道他们应该设置它的状态,因为他们需要音频并在完成播放音频时无条件地终止它。当然,这只适用于 90%。道歉,因为这不是最好的答案,我只是报告我的怀疑。也许其他人有更好的主意?

    【讨论】:

      【解决方案2】:

      您可以通过在启动应用程序时检查otherAudioPlaying 属性来检查其他应用程序启动时是否正在播放任何音频。 对于内部跟踪,也许您可​​以在调用 AudioSessionSetActive(BOOL setActive) 时使用布尔值。虽然使用 BOOL 听起来不是一个很好的方法。根据我目前的知识,我找不到任何其他方法来确定 AudioSession 是否处于活动状态。

      【讨论】:

        【解决方案3】:

        您可以使用此 api 来确定 iOS 中的音频会话是否处于活动状态。

        BOOL isPlaying = [[AVAudioSession sharedInstance] isOtherAudioPlaying];
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-10-29
          • 2011-04-16
          • 2015-03-20
          • 1970-01-01
          • 1970-01-01
          • 2019-01-05
          相关资源
          最近更新 更多