MPMediaPlaylistクラス
2010. 10. 18
●概要
MPMediaPlaylistオブジェクトまたはメディアプレイリストは、関連メディアアイテムの再生コレクションです。
(メディアアイテムはMPMediaItemクラスで説明しています)
各プレイリストは名前、属性の設定、アプリケーションの起動間で保持している固有の識別子を持っています。
ユーザはデスクトップのiTunesを使用してプレイリストを構成したり、またはデバイス上でon-the-goプレイリストを生成します。
貴方のiOSアプリケーションではプレイリストは読み込みのみです。
プレイリストを入手するにはプレイリスト毎にグループ化されているメディアクエリを設定します。
返される各メディアアイテムのコレクションはメディアのプレイリストです。
Xcodeのデバッガコンソールにプレイリストと曲名を出力するコードを以下に示します。
メディアクエリを構築するためのAPIはMPMediaPropertyPredicateクラスとMPMediaQueryクラスで説明しています。
●タスク
●プレイリストの使用
+ canFilterByProperty:
– valueForProperty:
●クラスメソッド
●インスタンスメソッド
・valueForProperty
- (id)valueForProperty:(NSString *)property
指定したプレイリストのプロパティキーの値を取得します。
戻り値は、メディアアイテムのpropertyキーの値を返します。
詳細は『Property Keys』を参照してください。
property:対応する値を取得するためのプロパティキーを指定します。
●定数
・Playlist Property Keys
これらのキーをcanFilterByProperty:やvalueForProperty:メソッドで使うと、プレイリストに関する情報を取得できます。
『filterable』と示しているプロパティは、メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaPropertyPredicateクラスを参照してください)
MPMediaPlaylistPropertyPersistentID
プレイリストの永続的な識別子です。
値はuint64_t(unsigned long long)のNSNumberオブジェクトです。
メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaQueryクラスを参照してください)
MPMediaPlaylistPropertyName
プレイリストの名前です。
値はNSStringオブジェクトです。
メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaQueryクラスを参照してください)
MPMediaPlaylistPropertyPlaylistAttributes
プレイリストに関連付けされた属性です。
値はNSIntegerデータ型のNSNumberオブジェクトです。
プレイリストの属性はNSIntegerのフィールドで識別します。
プレイリストにはいくつかの属性の組み合わせが有り、詳細は『Playlist Attribute Flags』を参照してください。
メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaQueryクラスを参照してください)
MPMediaPlaylistPropertySeedItems
プレイリストを生成するアイテムのシード(種)で、Geniusプレイリストでのみ適用されます。
値は一つ以上のMPMediaItemオブジェクトを含むNSArrayオブジェクトです。
MPMediaPlaylistAttributeGeniusフラグを設定していない場合、プレイリストの値はnilになります。
参考文献
・MPMediaPlaylist Class Reference
MPMediaPlaylistオブジェクトまたはメディアプレイリストは、関連メディアアイテムの再生コレクションです。
(メディアアイテムはMPMediaItemクラスで説明しています)
各プレイリストは名前、属性の設定、アプリケーションの起動間で保持している固有の識別子を持っています。
ユーザはデスクトップのiTunesを使用してプレイリストを構成したり、またはデバイス上でon-the-goプレイリストを生成します。
貴方のiOSアプリケーションではプレイリストは読み込みのみです。
プレイリストを入手するにはプレイリスト毎にグループ化されているメディアクエリを設定します。
返される各メディアアイテムのコレクションはメディアのプレイリストです。
Xcodeのデバッガコンソールにプレイリストと曲名を出力するコードを以下に示します。
MPMediaQuery *myPlaylistsQuery = [MPMediaQuery playlistsQuery];
NSArray *playlists = [myPlaylistsQuery collections];
for (MPMediaPlaylist *playlist in playlists) {
NSLog (@"%@", [playlist valueForProperty: MPMediaPlaylistPropertyName]);
NSArray *songs = [playlist items];
for (MPMediaItem *song in songs) {
NSString *songTitle =
[song valueForProperty: MPMediaItemPropertyTitle];
NSLog (@" %@", songTitle);
}
}
NSArray *playlists = [myPlaylistsQuery collections];
for (MPMediaPlaylist *playlist in playlists) {
NSLog (@"%@", [playlist valueForProperty: MPMediaPlaylistPropertyName]);
NSArray *songs = [playlist items];
for (MPMediaItem *song in songs) {
NSString *songTitle =
[song valueForProperty: MPMediaItemPropertyTitle];
NSLog (@" %@", songTitle);
}
}
メディアクエリを構築するためのAPIはMPMediaPropertyPredicateクラスとMPMediaQueryクラスで説明しています。
●タスク
●プレイリストの使用
+ canFilterByProperty:
– valueForProperty:
●クラスメソッド
●インスタンスメソッド
・valueForProperty
- (id)valueForProperty:(NSString *)property
指定したプレイリストのプロパティキーの値を取得します。
戻り値は、メディアアイテムのpropertyキーの値を返します。
詳細は『Property Keys』を参照してください。
property:対応する値を取得するためのプロパティキーを指定します。
●定数
・Playlist Property Keys
これらのキーをcanFilterByProperty:やvalueForProperty:メソッドで使うと、プレイリストに関する情報を取得できます。
『filterable』と示しているプロパティは、メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaPropertyPredicateクラスを参照してください)
NSString | *const | MPMediaPlaylistPropertyPersistentID; | // Filterable |
NSString | *const | MPMediaPlaylistPropertyName; | // Filterable |
NSString | *const | MPMediaPlaylistPropertyPlaylistAttributes; | // Filterable |
NSString | *const | MPMediaPlaylistPropertySeedItems; |
MPMediaPlaylistPropertyPersistentID
プレイリストの永続的な識別子です。
値はuint64_t(unsigned long long)のNSNumberオブジェクトです。
メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaQueryクラスを参照してください)
MPMediaPlaylistPropertyName
プレイリストの名前です。
値はNSStringオブジェクトです。
メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaQueryクラスを参照してください)
MPMediaPlaylistPropertyPlaylistAttributes
プレイリストに関連付けされた属性です。
値はNSIntegerデータ型のNSNumberオブジェクトです。
プレイリストの属性はNSIntegerのフィールドで識別します。
プレイリストにはいくつかの属性の組み合わせが有り、詳細は『Playlist Attribute Flags』を参照してください。
メディアプロパティ述語の構築に使用することができます。
(詳細はMPMediaQueryクラスを参照してください)
MPMediaPlaylistPropertySeedItems
プレイリストを生成するアイテムのシード(種)で、Geniusプレイリストでのみ適用されます。
値は一つ以上のMPMediaItemオブジェクトを含むNSArrayオブジェクトです。
MPMediaPlaylistAttributeGeniusフラグを設定していない場合、プレイリストの値はnilになります。
参考文献
・MPMediaPlaylist Class Reference