iOS MPMusicPlayerNotification如何在应用程序后台接收通知

3
我在我的应用程序中使用[MPMusicPlayerController ipodMusicPlayer]来播放歌曲,以确保即使应用程序进入后台也不会影响歌曲体验。
我在我的应用程序代理中注册了MPMusicPlayerNowPlayingItemDidChangeNotification,这样每当音乐发生变化时,我就可以停止播放器一段时间,做一些事情,然后再重新开始播放。
问题是,我需要在应用程序处于后台时收到通知,而且我的应用程序是唯一使用ipodMusicPlayer的应用程序。(也就是说,默认音乐应用程序未打开。)
我一直在尝试使用applicationDidEnterBackground,但我就是不能让它起作用。
我该如何实现这个功能呢?
谢谢您的帮助!

您需要将应用程序设置为后台模式,以便应用程序播放音频。 - Bhumeshwer katre
1
我已经做了,但那并没有帮助。 - Se Won Jang
1个回答

2
我找到了一个解决方案。
在您的应用程序委托中声明所有通知接收器,以及其它相关内容。
[[MPMusicPlayerController iPodMusicPlayer] beginGeneratingPlaybackNotifications];

接下来,初始化一个CLLocationManager对象并开始接收位置变化。

这样,即使应用程序进入后台,它也不会被挂起,

而且你的appdelegate将继续接收播放通知。

但是,它只适用于使用GPS功能的应用程序。


你认为这符合苹果的审批要求吗? - GuybrushThreepwood
就我正在构建的应用而言,我确实需要获取用户的GPS坐标。我不确定苹果是否会批准仅使用GPS来启用后台通知接收。 - Se Won Jang

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接