是否有可能检测到非ipod音乐?

时间:2012-08-29 11:53:18

标签: ios mpmusicplayercontroller background-music

有没有办法检测来自iPod应用以外的其他来源的音乐或媒体是否正在播放?

我知道我可以通过以下方式检测从ipod播放的音乐:

[[MPMusicPlayerController iPodMusicPlayer] playbackState] == MPMusicPlaybackStatePlaying

但如果正在播放的音乐来自Pandora Radio,Spotify,Plex等其他应用程序,则返回错误...我做错了什么或者这是否可能?

似乎这可能是可能的,因为这些其他应用程序能够注册到系统以接收系统控制事件

-(void)remoteControlReceivedWithEvent:(UIEvent *)theEvent

但是,到目前为止,除了ipod媒体之外,我还没有找到任何查询此值的方法。任何帮助,将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

static bool isOtherAudioIsPlaying(void)
{
    UInt32 OtherAudioIsPlaying = 0;
    UInt32 size = sizeof(OtherAudioIsPlaying);

    AudioSessionGetProperty(kAudioSessionProperty_OtherAudioIsPlaying,
                 &size,
                 &OtherAudioIsPlaying);
    return (bool)OtherAudioIsPlaying;
}