我正试图在我的项目中使用swift来播放短暂的系统声音,但无法使其正常工作。我搜索了答案,不幸的是,即使他们为其他人工作,他们也没有为我工作。这是我的代码。
//System Keyboard Tock Sound
func playInputClick() {
let filePath = NSBundle.mainBundle().pathForResource("Tock", ofType: "caf")
let fileURL = NSURL(fileURLWithPath: filePath!)
var soundID:SystemSoundID = 0
AudioServicesCreateSystemSoundID(fileURL, &soundID)
AudioServicesPlaySystemSound(soundID)
}
此代码的objective-c版本工作正常,现在swift版本对我不起作用,当试图播放声音时模拟器中没有发生任何事情,当我点击按钮在设备上播放时它会减慢敲击动作并且没有声音。 我无法弄清楚导致问题的原因,是它的测试版吗?但是对于这个论坛中的某些人来说,设备上的代码完全相同。也许这更多是关于在swift中调用C方法的问题。
这是来自系统日志:
[MPUSystemMediaControls] Updating supported commands for now playing application.
Failed to inherit CoreMedia permissions from 2743: (null)
答案 0 :(得分:1)
重新安装X-Code解决了我的问题,我不知道出了什么问题。如果有人需要使用代码,上面的代码只适用于不在模拟器上的实际设备。