次のコードを使用して、iTunes ライブラリからプレイリストを読み込もうとしています。このコードは、"Christmas & pop mix" という名前を除くすべてのプレイリスト名で機能します (他のプレイリスト名にも名前に & が含まれています)。「クリスマス & ポップ ミックス」では、ミュージック プレーヤーに「3、4、5 スター ミュージック」というプレイリストが読み込まれます。プレイリスト「Christmas & pop mix」は、以下の for ループ内にあることに注意してください。しかし、再生される実際のコレクションは間違ったものです。この問題を追跡する方法はありますか?
NSString *nameOfPlaylistToPlay = @"Christmas & pop mix";
// Get a collection of all playlists on the device
MPMediaQuery *playlistsQuery = [MPMediaQuery playlistsQuery];
NSArray *localPlaylists = [playlistsQuery collections];
// Check each playlist to see if it is the right one
for (MPMediaItemCollection *playlist in localPlaylists) {
NSString *playlistName = [playlist valueForProperty: MPMediaPlaylistPropertyName];
if ([playlistName isEqualToString:nameOfPlaylistToPlay]) {
// Add the playlist to the player's queue and get out of here
[musicPlayer setQueueWithItemCollection:playlist];
playlistFound = YES;
break;
}
}
[musicPlayer play];