在项目中需要播放系统提示音,或者需要播放本地的提示音时,比如推送的提示音需要更改时,我们可以用到系统的一个声音服务的API,它用于播放不超过30秒的声音,支持的格式有限,一般会使用wav文件,但不支持操控声音,控制音量。
具体用法:
引用 import AudioToolbox
生成soundID
//根据本地声音生成SystemSoundID
func loadMusic(name: String) -> SystemSoundID {
//创建soundID
var soundID: SystemSoundID = 0
//获取声音地址
guard let filePath = Bundle.main.path(forResource: name, ofType: nil) else { return soundID }
//地址转换URL
let url = URL(fileURLWithPath: filePath)
//对soundID进行赋值
AudioServicesCreateSystemSoundID(url as CFURL, &soundID)
return soundID
}
播放声音
@objc func playVoiceAction() {
//播放声音
let soundID = loadMusic(name: "giveorder.wav")
AudioServicesPlaySystemSound(soundID)
}