iPhoneアプリを使ってiPodライブラリから最も再生された25曲を取り出す必要があります。MPMediaQueryを使用しています。
1つの解決策は、すべてのトラックをループして、MPMediaItemPropertyAlbumTrackCountで比較することです。しかし、それは少し非効率的だと思います。最も再生されたアイテムのプレイリストを直接取得する方法はありますか?
iPhoneアプリを使ってiPodライブラリから最も再生された25曲を取り出す必要があります。MPMediaQueryを使用しています。
1つの解決策は、すべてのトラックをループして、MPMediaItemPropertyAlbumTrackCountで比較することです。しかし、それは少し非効率的だと思います。最も再生されたアイテムのプレイリストを直接取得する方法はありますか?
MPMediaItemPropertyAlbumTrackCount ではなく、MPMediaItemPropertyPlayCountを探していると思います。MPMediaItemPropertyAlbumTrackCount は、アルバムに表示される曲のトラック番号です。
残念ながら、 MPMediaItemPropertyPlayCountはユーザー定義のプロパティであるため、MPMediaQuery でクエリを作成するために使用することはできません。
最適なオプションは、アプリを初めて開いたときに Core Data などのデータベースにすべての再生回数を保存し、ユーザーのライブラリが変更されたときに通知を受け取るように登録して更新することです。