Gye*_*eom 6 volume swift ios15
我使用以下代码来检测用户更改的系统音量。
NotificationCenter.default.addObserver(self, selector: #selector(volumeChanged), name: NSNotification.Name(rawValue: "AVSystemController_SystemVolumeDidChangeNotification"), object: nil)
Run Code Online (Sandbox Code Playgroud)
当我更新到 iOS 15 时,我发现这段代码不起作用,但对于任何以前版本的 iOS 来说它都有效。
我也使用了一个addObserver函数,但没关系。
这是 iOS 15 的错误吗?如果是,我该如何修复它。
谢谢 :)
Ada*_*ang 16
我挂钩了MPVolumeControllerSystemDataSource的方法_systemVolumeDidChange,在iOS 15.0(至少 beta2)中,通知名称已更改为SystemVolumeDidChange,这是新的通知结构:
{
AudioCategory = "Audio/Video";
Reason = ExplicitVolumeChange;
SequenceNumber = 1069;
Volume = 0;
}
Run Code Online (Sandbox Code Playgroud)
有两点需要注意:
您正在做的事情不受支持,因此如果它不能在所有系统上运行也不足为奇。正确记录的方法是在音频会话属性上使用 KVO outputVolume:https://developer.apple.com/documentation/avfaudio/avaudiosession/1616533-outputvolume
| 归档时间: |
|
| 查看次数: |
6052 次 |
| 最近记录: |