2012-07-05 35 views
0

我創建一個小的有趣的應用程序來播放一些MP3文件到PhoneGap的應用程序 我已成功地發揮在後臺音頻,非常感謝幫助在計算器上PhoneGap的播放問題與iPhone應用程序

但現在問題是當應用程序在後臺運行時,或應用程序被鎖定時,下一首歌曲無法播放。我寫的代碼,以播放下一首歌曲

=======

$(".greyselected").each(function(i) { 
if($(this).is(":visible")) 
{ 
activetrackclass = $(this).attr("class").split(" ")[0]; 
return; 
} 
}); 


$("." + activetrackclass).each(function(i){ 
if($(this).hasClass("greyselected")) 
{ 
fetchmp3($("." + activetrackclass + ":eq(" + parseInt(i+1) + ")").find(".partistname").text(), $("." + activetrackclass + ":eq(" + parseInt(i+1) + ")").find(".ptrackname").text(), $("." + activetrackclass + ":eq(" + parseInt(i+1) + ")").find(".ptrackurl").text(), $("." + activetrackclass + ":eq(" + parseInt(i+1) + ")").find(".spanduration").text(), "tracklist"); 

$("." + activetrackclass).removeClass("greyselected"); 
$("." + activetrackclass + ":eq(" + parseInt(i+1) + ")").addClass("greyselected"); 

$("#divplayer").slideDown("slow"); 
return false; 
} 
}); 

=======

greyselected是當前播放 activetrackclass這首歌是一個變量持有該類軌道項目或軌道股利 fetchmp3是調用下一個MP3文件列表

所有MP3功能的服務器上託管

當應用程序處於活動狀態時,播放效果會很好,但只要播放到背景,它就會播放正在播放的歌曲,然後停止,直到該應用程序再次可見爲止

希望您一如既往的寶貴幫助

回答

0

後臺任務只運行一段時間,然後操作系統殺死它。如果你的應用程序不活躍,那麼它不會永遠運行,ios會在一段時間後停止。

http://www.macworld.com/article/1164616/how_ios_multitasking_really_works.html

您可以通過在Info.plist文件中指定的UIBackgroundModesaudio模式聲明後臺播放的支持。請查看iphone programming guide的第60頁以瞭解更多詳細信息

如果您的應用程序可以使用本機代碼,那麼您有很多選項可以配置音頻的行爲。在下面的文檔中檢查Categories Express Audio Roles

http://developer.apple.com/library/ios/#documentation/Audio/Conceptual/AudioSessionProgrammingGuide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40007875

從蘋果開發者論壇

https://devforums.apple.com/message/264397#264397

+0

感謝您的答覆 一個古老的線程我有2個MP3文件的播放,第一個是30秒,另一個是4:00分。他們都完全玩,然後不移動到下一個。如果您使用像Pandora/Spotify這樣的應用程序,您可以看到我的意思 - 如果您選擇播放列表,那麼即使您點按中間按鈕或鎖定手機,歌曲也會繼續播放。 – 2012-07-05 18:38:27

+0

查看第60頁 - http://developer.apple.com/library/ios/documentation/iphone/conceptual/iphoneosprogrammingguide/iphoneappprogrammingguide.pdf – dhaval 2012-07-05 19:03:10

+0

我明白你在說什麼,但潘多拉和Spotify做到了,即使我設置了它循環= true,然後繼續播放。所以不知道我在做什麼錯在這裏 – 2012-07-05 19:26:56