2016-06-09 85 views
0

我已經關注了Net上的每一篇文章,但沒有解決這個問題。 聲音開始和停止權立即像0.1秒後。我可以很快聽到聲音。Swift:音頻開始和停止.1秒

這裏是真正重要的事情我的代碼: ...

let path = NSBundle.mainBundle().pathForResource("bgMusic", ofType: "mp3") 
    let bgMusicURL = NSURL.fileURLWithPath(path!) 

    var backgroundMusicPlayer:AVAudioPlayer! 

    do{ 
     try AVAudioSession.sharedInstance().setActive(true) 
     try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback) 
     try backgroundMusicPlayer = AVAudioPlayer(contentsOfURL: bgMusicURL) 
     backgroundMusicPlayer!.prepareToPlay() 
     backgroundMusicPlayer!.play() 

    }catch { 
     print ("ERROR") 
    } 

...

+0

你還有其他的線程在運行嗎? – brkr

回答

0

當包含您的代碼段的函數結束時,垃圾回收器會取消分配您的backgroundMusicPlayer 。嘗試使backgroundMusicPlayer成爲一個全局變量,或者擁有某種靜態變量來保存它。

+0

使其成爲一個全球變量工作完美!謝謝!! –

+0

很高興聽到它!你能否把答案標記爲正確? –