使用 AVAudioSession 播放音频问题
Posted
技术标签:
【中文标题】使用 AVAudioSession 播放音频问题【英文标题】:Issue playing audio with AVAudioSession 【发布时间】:2015-10-01 20:12:50 【问题描述】:当前代码:
@IBAction func sound1(sender: UIButton)
var sound = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("Sound1", ofType: "wav")!)
do
try AVAudiosession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
catch _
do
try AVAudioSession.sharedInstance().setActive(true)
catch _
var error: NSError?
do
audioPlayer = try AVAudioPlayer(contentsOfURL: sound)
catch var error1 as NSError
error = error1
audioPlayer = nil
audioPlayer.prepareToPlay()
audioPlayer.volume = 1
audioPlayer.play()
这是我在将此项目更新到 Swift 2 之前的当前代码。
audioPlayer = nil
我在尝试运行应用程序时遇到的问题是:
无法将“NilLiteralConvertible”类型的值分配给“AVAudioPlayer”类型的值
【问题讨论】:
【参考方案1】:这意味着你的变量audioplayer
不是可选的,所以不能设置为nil
。
要么将其设为可选,然后将其与try?
一起使用(注意?
) 不带do catch
,或者如果您想继续,请不要尝试将其设置为nil
在do catch
中使用try
。
【讨论】:
以上是关于使用 AVAudioSession 播放音频问题的主要内容,如果未能解决你的问题,请参考以下文章
iOS- 关于AVAudioSession的使用——后台播放音乐
AVPlayer(或 AVAudioSession?)在我离开 ViewController 后播放,当我返回两个时播放