2016-12-19 155 views
-1

我一直在構建iOS音樂應用程序和 我正在使用MPMusicPlayerController.systemMusicPlayer()從設備的iTunes庫中播放音樂。如何在用戶退出iOS應用程序(Swift)時執行一個方法?

我試圖applicationWillTerminate停止音樂播放器,並且它沒有工作,做一些研究,我發現了iOS 4的applicationWillTerminate方法後,將*幾乎從來沒有被調用後,我們必須做的所有工作在applicationDidEnterBackground方法。

但我要說的是,我希望我的音樂播放器保持在播放音樂時進入到後臺,只有停止音樂時,用戶強制退出應用程序,我怎樣才能實現這種行爲?

+1

沒有設置用於正常終止iOS應用程序的API。更在https://developer.apple.com/library/content/qa/qa1561/_index.html – seggy

回答

1

重要:applicationWillTerminate:如果您的應用程序目前處於暫停狀態不叫方法。

即使你使用的是iOS SDK 4和後來開發你的應用程序,你仍然必須爲您的應用程序準備沒有任何通知被殺害。用戶可以使用多任務UI來顯式終止應用程序。另外,如果內存受到限制,系統可能會從內存中移除應用程序以騰出更多空間。暫停的應用程序未收到終止通知,但如果您的應用程序當前正在後臺運行(並且未掛起),則系統會調用您的應用程序委託的applicationWillTerminate:方法。您的應用程序無法從此方法請求額外的後臺執行時間。

https://developer.apple.com/library/content/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/TheAppLifeCycle/TheAppLifeCycle.html

+0

是的,但有什麼辦法來實現上述功能? – Poorna

+0

對不起,我已經在我的音樂應用程序中解決了這個問題,但是我使用MPMediaPlayer –

+0

https://github.com/zhaofucheng1129/iOSBackgroundDemo/blob/master/iOSBackgroundDemo/AudioViewController.swift –

相關問題