2013-03-03 65 views
0

我正在使用iPodMusicPlayerController做音樂應用程序。當在iOS中播放音頻時,MPMusicPlayerController停止並且無法恢復

我很好玩iPod庫中的歌曲。

但是有一件事。

當我從iPod庫播放歌曲,我去Safari瀏覽器或其他東西,從網上播放音樂或電影,我的應用程序停止播放。

從網絡播放後,我回到我的應用程序,並點擊播放按鈕,不工作了。

這是我的playOrPause操作代碼。

MPMusicPlaybackState playbackState = self.player.playbackState; 
    if (playbackState == MPMusicPlaybackStateStopped || playbackState == MPMusicPlaybackStatePaused) 
    { 
     [self.playOrPauseButton setImage:[UIImage imageNamed:@"pauseiCon"] forState:UIControlStateNormal]; 
     [self.player play]; 
    } 

    else if (playbackState == MPMusicPlaybackStatePlaying) 
    { 
     [self.playOrPauseButton setImage:[UIImage imageNamed:@"playiCon"] forState:UIControlStateNormal]; 
     [self.player pause]; 
    } 

而且我還註冊了通知。

我該如何解決它?

回答

0

我爲自己的問題得到了解決方案。 :d

MPMusicPlaybackStateInterrupted

第一寄存器通知我們可以與物業檢查中斷。

MPMusicPlaybackState playbackState = [self.player playbackState]; 

    if (playbackState == MPMusicPlaybackStatePaused || playbackState == MPMusicPlaybackStateInterrupted) 
    { 
     [self.playOrPauseButton setImage:[UIImage imageNamed:@"playiCon"] forState:UIControlStateNormal]; 
    } 

    else if (playbackState == MPMusicPlaybackStatePlaying) 
    { 
     [self.playOrPauseButton setImage:[UIImage imageNamed:@"pauseiCon"] forState:UIControlStateNormal]; 
    } 

而且在playOrPause行動添加以下代碼

MPMusicPlaybackState playbackState = self.player.playbackState; 

    if (playbackState == MPMusicPlaybackStateStopped || playbackState == MPMusicPlaybackStatePaused || playbackState == MPMusicPlaybackStateInterrupted) 
    { 
     [self.playOrPauseButton setImage:[UIImage imageNamed:@"pauseiCon"] forState:UIControlStateNormal]; 
     [self.player play]; 
    } 

    else if (playbackState == MPMusicPlaybackStatePlaying) 
    { 
     [self.playOrPauseButton setImage:[UIImage imageNamed:@"playiCon"] forState:UIControlStateNormal]; 
     [self.player pause]; 
    } 
相關問題