MPMusicPlayerController

MPMusicPlayerControllerのiPodの音楽を再生する関連のメソッド

メソッド名 動作
play 再生
pause 一時停止
stop 停止
beginSeekingBackward 巻き戻し
beginSeekingForward 早送り
skipToNextItem 次の曲へ
skipToPreviousItem 前の曲へ

もしiPodのようにplayとpauseを一緒のボタンで使えるようにしたかったら、buttonの操作メソッド内で

	if(playbackState == MPMusicPlaybackStateStopped || playbackState == MPMusicPlaybackStatePaused){
		[musicPlayer play];
	}else if(playbackState == MPMusicPlaybackStatePlaying){
		[musicPlayer pause];
	}

って感じで書いて上げれば良い。

そんな感じでボタンを押すとiPodの曲が再生されたり停止するボタン作成

-(IBAction)playButton:(id)sender{
	MPMusicPlaybackState playState = [musicPlayer playState];
	NSError *error ;
	[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:&error];
        //停止してたら再生、再生してたら停止
	if(playState == MPMusicPlaybackStateStopped || playState == MPMusicPlaybackStatePaused){
		[musicPlayer play];
	}else if(playState == MPMusicPlaybackStatePlaying){
		[musicPlayer pause];
	}

        //タイトルとアーティスト名表示 musicTitleとmusicArtistはラベル。
	MPMediaItem *mediaItem = [musicPlayer nowPlayingItem];
	musicTitle.text = [mediaItem valueForProperty:MPMediaItemPropertyTitle];
	musicArtist.text = [mediaItem valueForProperty:MPMediaItemPropertyArtist];
}

って感じになるのかな。playButtonの中にsharedInstanceを書く必要はなかったけど。。

errorの処理ってどうすればいいんだろ。。nilって書いてる人いたけどnilはよくないと思うのでどうなってるのか調べるべきか。