iOS播放系統(tǒng)聲音
簡介
iOS 播放聲音有很多種方式砸彬,其中系統(tǒng)聲音服務(wù)應(yīng)該是最簡單的了誓斥。但我們使用起來要小心,因為使用系統(tǒng)聲音服務(wù)時會有一些限制
- 聲音不能超過30秒
- 支持格式有限, caf, aif, pcm或者ima/adpcm數(shù)據(jù)的wav文件
三種類型
播放系統(tǒng)聲音有三種類型:
- 聲音:播放一個聲音文件素标。但是如果手機靜音妆档,用戶什么也聽不見。
- 提醒:播放一個聲音文件春弥,如果手機設(shè)為靜音或震動呛哟,這時會通過震動提醒用戶。
- 震動:震動手機匿沛,而不考慮其他設(shè)置扫责。
聲音類型
import AudioToolbox
let path = Bundle.main.path(forResource: "test", ofType: "caf")!
let url = URL(fileURLWithPath: path)
AudioServicesCreateSystemSoundID(url as CFURL, &soundID)
AudioServicesPlaySystemSound(soundID)
提醒類型
import AudioToolbox
let path = Bundle.main.path(forResource: "test", ofType: "caf")!
let url = URL(fileURLWithPath: path)
AudioServicesCreateSystemSoundID(url as CFURL, &soundID)
AudioServicesPlayAlertSound(soundID)
震動類型
import AudioToolbox
let soundID = SystemSoundID(kSystemSoundID_Vibrate)
AudioServicesPlaySystemSound(soundID)
結(jié)束回調(diào)
AudioServicesAddSystemSoundCompletion(soundID, nil, nil, { (soundID, clientData) in
print("End of playing voice.")
}, nil)