iOS音效设置-AudioToolbox框架

序言

在iOS设备中,声音分为两种,一种是音效输出,一种是音频输出。音效,就是利用系统的声音,用来播放比较短的音频,主要用途是用来做系统的提示音,使用的框架是AudioToolBox。

音效播放

1.声明一个声音ID(SoundID),靠这个声音ID来区分哪个音频(音效),类型是无符号长整形的
2.创建播放声音的服务(告诉系统 有一个可以使用的SoundID) 声音文件的路径 SoundID。
3.播放声音

示例代码
  1. 获取音效文件路径
guard let url = Bundle.main.url(forResource: "music", withExtension: "mp3", subdirectory: "music.bundle") else {
    print("获取文件路径失败")
    return
}
  1. 生成一个 SystemSoundID
var id: SystemSoundID = 0
AudioServicesCreateSystemSoundID(urlRef, &id)
  1. 播放音效 - 带振动
if #available(iOS 9.0, *) {
    AudioServicesPlayAlertSoundWithCompletion(id) {
        // 执行回调
        completionBlock()
        // 4.释放
        AudioServicesDisposeSystemSoundID(id)
    }
} else {
    AudioServicesPlaySystemSound(id)
}

播放音效 - 不带振动

if #available(iOS 9.0, *) {
    AudioServicesPlaySystemSoundWithCompletion(id) {
        // 执行回调
        completionBlock()
        // 4.释放
        AudioServicesDisposeSystemSoundID(id)
    }
} else {
    AudioServicesPlaySystemSound(id)
}

你可能感兴趣的:(iOS音效设置-AudioToolbox框架)