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 - 实现音乐的背景播放功能
猜你喜欢
转载自blog.csdn.net/u011728344/article/details/78572567
今日推荐
周排行