iOS音效設(shè)置-AudioToolbox框架

序言

在iOS設(shè)備中,聲音分為兩種,一種是音效輸出,一種是音頻輸出。音效,就是利用系統(tǒng)的聲音,用來播放比較短的音頻,主要用途是用來做系統(tǒng)的提示音,使用的框架是AudioToolBox。

音效播放

1.聲明一個聲音ID(SoundID),靠這個聲音ID來區(qū)分哪個音頻(音效),類型是無符號長整形的
2.創(chuàng)建播放聲音的服務(wù)(告訴系統(tǒng) 有一個可以使用的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) {
        // 執(zhí)行回調(diào)
        completionBlock()
        // 4.釋放
        AudioServicesDisposeSystemSoundID(id)
    }
} else {
    AudioServicesPlaySystemSound(id)
}

播放音效 - 不帶振動

if #available(iOS 9.0, *) {
    AudioServicesPlaySystemSoundWithCompletion(id) {
        // 執(zhí)行回調(diào)
        completionBlock()
        // 4.釋放
        AudioServicesDisposeSystemSoundID(id)
    }
} else {
    AudioServicesPlaySystemSound(id)
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容