Swift MPMusicPlayerController.systemMusicPlayer、skipToNextItem()後のplaybackState

5曲をキューに登録して再生。
5曲目でskipToNextItem()コール。
再生は止まるがplaybackStateは.playingのまま。
.pauseや.stoppedにはならない。
以前はなっていたはず。
Objective-Cでアプリを作成しいた頃、下記のコードで期待通り動作し、アプリを公開していた。
- (void)nextMusic:(NSTimer*)timer {
[player skipToNextItem];
if(player.playbackState == MPMusicPlaybackStateStopped) {
self.stopMusic.enabled = NO;
self.albumSelect.enabled = YES;
}
else {
MPMediaItem* nowItem = [player nowPlayingItem];
[self setMusicInfo:nowItem];
}
}
改版を追っていないので仕様が変更されたのかもしれない。
キューの最後から次としただけなので、状態は変わらないという解釈も出来なくはない。
更にskipToNextItem()コールすると.pauseになる。
終わったことの判断はindexOfNowPlayingItemが0になることで出来る。





