import UIKit
import AVFoundation//引入流媒體基礎框架,它能收集各種多媒體數據,這些數據可以來自不同的輸入設備,比如攝像機、錄音機等
class ViewController: UIViewController {
var audioPlayer:AVAudioPlayer = AVAudioPlayer()//初始化音頻播放對象,並將音頻播放對象作爲視圖控制器類的屬性
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//獲得音頻會話對象,該對象屬於單例模式,也就是說不用開發者而自行實例化,這個類在各種音頻環境中,起着非常重要的作用
let session = AVAudioSession.sharedInstance()
do {//在音頻播放前,首先創建一個異常捕捉語句
try session.setActive(true)//啓動音頻會話管理,此時會阻斷後臺音樂的播放
try session.setCategory(AVAudioSessionCategoryPlayback)//設置音頻操作類別,表示該應用僅支持音頻的播放
UIApplication.shared.beginReceivingRemoteControlEvents()//設置應用程序支持接受遠程控制事件
let path = Bundle.main.path(forResource: "MarryYou", ofType: "mp3")//定義一個字符串常量,描述聲音文件的路徑
let soundUrl = URL(fileURLWithPath: path!)//將字符串路徑轉換成網址路徑
try audioPlayer = AVAudioPlayer(contentsOf: soundUrl)//對音頻播放對象進行初始化,並加載指定的音頻文件
audioPlayer.prepareToPlay()//爲音頻播放做好準備
audioPlayer.volume = 1.0//設置音頻播放對象的音量大小
audioPlayer.numberOfLoops = -1//設置音頻播放次數,-1爲無線循環播放
audioPlayer.play()
} catch {
print(error)
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Xcode9學習筆記65 - 實現音樂的背景播放功能
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.