检测音量按钮即使在音量最大时按下

Posted

技术标签:

【中文标题】检测音量按钮即使在音量最大时按下【英文标题】:Detect Volume button press EVEN when volume is max 【发布时间】:2018-12-12 15:58:03 【问题描述】:

我想检测何时按下音量按钮。我已经尝试了很多事情,比如添加一个像

这样的观察者
AVAudiosession.sharedInstance().addObserver(self, forKeyPath: #keyPath(AVAudioSession.outputVolume), options: [.old, .new], context: nil)

然后覆盖:

override internal func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey: Any]?, context: UnsafeMutableRawPointer?)

但我想在声音最大的情况下触发这个功能。

有没有办法做到这一点,而无需改变声音来降低它?

【问题讨论】:

【参考方案1】:

试试

  AVAudioSession.sharedInstance().setActive(true)
  AVAudioSession.sharedInstance().observe(\.outputVolume)  [weak self] (audioSession, _) in
        <#code#>
    

见https://github.com/andreamazz/SubtleVolume

【讨论】:

以上是关于检测音量按钮即使在音量最大时按下的主要内容,如果未能解决你的问题,请参考以下文章

屏幕关闭时识别音量按钮按下 Android

如何检测音量上下是不是被按下

检测 Siri Remote 上的音量和 Home 键按下情况

检测 iPhone 音量按钮保持? (iOS 8)

检测音量按钮的长按和短按 - iOS

在java中同时按下音量增大和减小按钮一段时间以执行特定功能