2015-10-01 5 views
0

Текущий код:Issue играть аудио с AVAudioSession

@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, если вы хотите продолжать использовать try внутри do catch.

Смежные вопросы