[英]play mp3 with monotouch
我正在使用monotouch構建應用程序。 基本上我需要在應用程序加載后立即播放mp3。 在main.cs上,我在推送主控制器之前添加了這個片段:
AVAudioPlayer player = new AVAudioPlayer();
NSUrl mediaFile = NSUrl.FromFilename("Content/Audio/music1.mp3");
player = AVAudioPlayer.FromUrl(mediaFile);
player.Delegate = new PlayerDelegate();
if(player.PrepareToPlay()){
player.Play();
}
但是當我啟動應用程序時,我可以聽到大約半秒的聲音,然后什么都沒有。 這段代碼是正確的還是有問題?
謝謝
沒有更多上下文就很難提供答案,比如更多的代碼:-)
我懷疑你的AVAudioPlayer
,如果用作局部變量,當方法(它是FinishedLaunching
?)返回時,垃圾收集器(GC)可以收集它。
如果是這種情況,那么將本地player
變量提升到字段中將確保向AVAudioPlayer
實例保留引用,並允許它在不中斷(或崩潰)的情況下播放。
如果我錯了,請編輯您的問題並向我們提供更多背景信息,我們應該能夠為您提供進一步的幫助。
現在真的很容易:
//enable audio
AudioSession.Initialize();
//load the sound
sound = SystemSound.FromFile("Sounds/rev.wav");
sound.PlaySystemSound();
嘗試注冊AVAudioPlayerDelegate並在audioPlayerEndInterruption方法中重新開始音樂備份。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.