透過 AVAudioPlayer、AVPlayer 播放內建音檔

Patty
Aug 15, 2022

--

流程

  1. 加入音檔至 App
  2. 框架 AVFoundation
  3. 播放
  • 先 import AVFoundation函式庫
  • 若是播放mp3檔案的音樂則可以透過兩種方法:
    AVAudioPlayerAVPlayer,如果播放為線上音樂則建議使用AVPlayer。

方法一:AVPlayer

import AVFoundationvar player: AVPlayer?if let url = Bundle.main.url(forResource: "diceShakeSoundEffect", withExtension: "mp3"){
player = AVPlayer(url: url)
player?.play()
}

方法二:AVAudioPlayer

import AVFoundationvar player: AVAudioPlayer?if let url = Bundle.main.url(forResource: "diceShakeSoundEffect", withExtension: "mp3"){
player = try? AVAudioPlayer(contentsOf: url)
player?.play()
}

其中語法說明:

  • Bundle.main為使用Bundle當中主要物件,可用於讀取專案當中的檔案。而url(forResources:withExtension:)則為讀取檔案的路徑和副檔名。
  • 注意使用AVAudioPlayer方法當中需要使用try? 不然會出現error
  • 加入將音樂檔案時加入至專案當中,請記得勾選 Copy items if needed,會同時複製此檔案至專案資料夾中。之後上傳至GitHub,其他人下載的專案資料夾當中才同時會有此音樂檔案。

--

--

No responses yet