巧合的是,在开发应用时,我的源代码遇到了一些奇怪的行为:
我已启动一个调用函数的间隔来输出设备的设定音量。
在真实设备(iPhone X)上测试代码时,我注意到当按下其中一个卷时,音量的"值似乎没有改变" 的按钮。
这是我正在使用的代码:
Timer.scheduledTimer(
timeInterval: 0.5,
target: self,
selector: #selector(self.getSystemVolume),
userInfo: nil,
repeats: true)
@objc func getSystemVolume() {
let outputVolume = AVAudioSession.sharedInstance().outputVolume
print(outputVolume)
}
注意:我不确定这是不是错误 - 可能是!
但是:现在有人如何修复行为?任何帮助都会非常感谢:)
答案 0 :(得分:0)
看起来我自己找到了一个可行的解决方案:
我已经添加了这些内容:
let volumeView = MPVolumeView()
volumeView.setNeedsLayout()
我不知道为什么这些行导致代码工作,但是 - 现在它正在工作。
@objc func getSystemVolume() {
let volumeView = MPVolumeView()
volumeView.setNeedsLayout()
let outputVolume = AVAudioSession.sharedInstance().outputVolume
print(outputVolume)
}
我真的希望有人可以添加评论为什么这些行修复代码。 :)