2
下面的代碼應該發揮環路上無聲的音頻剪輯,以保持應用程序在後臺運行:如何在背景中的循環播放聲音而不被打斷?
//set sessions ....
.........
//play
audio_player = [[AVAudioPlayer alloc] initWithContentsOfURL: url error:NULL];
audio_player.numberOfLoops= -1; //always repeat
bool ret = [audio_player play];
您按下home鍵,它在後臺播放,使您的應用程序有效。
但是,當您撥打電話時,播放器將停止播放,然後[audio_player play]
將返回false。
所以問題是,如果在後臺,你如何防止AVAudioPlayer的播放被中斷或允許它在被中斷時恢復?否則,應用程序將在靜音音頻循環上次播放10分鐘後終止。
我知道有一個解決方案,因爲有許多鬧鐘應用程序可以在後臺運行而不受影響。我已經測試過,他們真的在後臺運行。
任何人都可以想出一個解決方案在後臺運行而不被App Store拒絕嗎?
你是如何測試他們真的在後臺運行的? – tia 2011-12-30 16:12:41
據我所知,你的應用程序在進入後臺10分鐘後不應該停止。閱讀以下鏈接,這可能會幫助你.. http://www.iphonedevsdk.com/forum/iphone-sdk-development/9598-avaudioplayer-issue.html https://devforums.apple.com/message/264397#264397和http://developer.apple.com/library/IOs/#documentation/Audio/Conceptual/AudioSessionProgrammingGuide/HandlingAudioInterruptions/HandlingAudioInterruptions.html和計時器應用程序無法與音頻應用程序進行比較。 – 2011-12-30 19:12:05
這是接近的問題[iOS 4鬧鐘應用與多任務支持](http://stackoverflow.com/questions/3897946/ios-4-alarm-clock-app-with-multitasking-support),但問與此稍有不同的東西。儘管如此,這裏的一個或兩個答案可能會有幫助。 – 2011-12-30 21:39:57