获取本机应用目标c中除音乐应用之外的当前播放曲目的信息

时间:2017-07-25 09:53:16

标签: ios objective-c iphone avaudiosession mpmusicplayercontroller

我想在我的原生应用中检测当前正在播放的歌曲,因为以太是应用中的一个音频会话。 我在下面实现了,当通过手机音乐应用播放歌曲时,它的工作正常。

-(void)checksession
{
    BOOL isPlayingWithOthers = [[AVAudioSession sharedInstance] isOtherAudioPlaying];
    if(isPlayingWithOthers)
    {
        _controller = [MPMusicPlayerController systemMusicPlayer];
        [_play setEnabled:YES];
        [_pause setEnabled:YES];
        [_next setEnabled:YES];
        [_prev setEnabled:YES];
    }
}

但如果这首歌是从pandora app等其他应用播放的,那么MPMusicPlayerController无效。 请建议即使通过其他应用而不是手机音乐应用播放歌曲,我如何控制下一首,上一首,播放,暂停。

任何帮助都将受到高度赞赏! 提前谢谢!

1 个答案:

答案 0 :(得分:1)

•除非在iOS11中发生重大变化,否则您无法控制自己应用中其他应用的播放。

•同样,除非使用其中一个内置的musicPlayers(systemMusicPlayer,也许是applicationMusicPlayer),否则无法获取任何播放信息

我没有查看iOS11中的更改​​,看看是否已更改。