0

我一直在构建 iOS 音乐应用程序,并且正在使用MPMusicPlayerController.systemMusicPlayer()从设备的 iTunes 库中播放音乐。

我尝试了applicationWillTerminate来停止音乐播放器,但它没有用,在做了一些研究后我发现 iOS 4 之后applicationWillTerminate方法将*几乎永远不会被调用,我们必须在applicationDidEnterBackground方法中完成所有工作。

但我的意思是,我希望我的音乐播放器在进入后台时继续播放音乐,并且只有在用户强制退出应用程序时才停止音乐,我该如何实现这种行为?

4

1 回答 1

1

重要提示:如果您的应用当前处于挂起状态,则不会调用 applicationWillTerminate: 方法。

即使您使用 iOS SDK 4 及更高版本开发您的应用程序,您仍然必须准备好您的应用程序在没有任何通知的情况下被终止。用户可以使用多任务 UI 明确地终止应用程序。此外,如果内存受到限制,系统可能会从内存中删除应用程序以腾出更多空间。暂停的应用程序不会收到终止通知,但如果您的应用程序当前在后台状态下运行(并且未暂停),系统会调用您的应用程序委托的 applicationWillTerminate: 方法。您的应用无法通过此方法请求额外的后台执行时间。

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

于 2016-12-19T06:10:28.087 回答