2015-05-23 66 views
0

假設您希望用戶在文本字段中鍵入內容,然後MPMusicPlayerController會找到包含該文本的歌曲並播放它。那可能嗎?你如何搜索MPMusicPlayerController某些單詞?如何通過歌曲和藝術家名稱在MPMusicPlayerController中查找歌曲

如果這不可行,是否有人可以在一臺設備上播放歌曲並獲取有關該歌曲的詳細信息並在另一臺設備上播放同一首歌曲?

我試過下面的代碼,但MPMediaItem不包含歌名的字符串。它只有隨機數字和字母(id)。

MPMediaQuery *query = [MPMediaQuery songsQuery]; 
NSArray *songs = [query items]; 
NSUInteger indexOfTheObject = [songs indexOfObject: @"Volcano"]; 
MPMediaItem *track = [songs objectAtIndex:indexOfTheObject]; 

回答

0

您可以搜索歌曲,但不能使用MPMusicPlayerController。您想製作MPMediaQuery以探索用戶音樂庫中的內容。

MPMediaItem不包含歌曲名稱

井的字符串,該問題存在,你的最後一行完全是胡說八道:

MPMediaItem *track = [songs containsObject:self.songName]; 

的MPMediaItem具有性能其中之一是歌曲的名稱(MPMediaItemPropertyTitle)。按屬性篩選查詢(即MPMediaPropertyPredicate)或獲取大量歌曲(可能都是這些歌曲)並檢查這些歌曲的屬性。

+0

如何使用MPMediaQuery查找具有特定名稱和藝術家的歌曲?或者是否有可能通過它的id找到歌曲(並且該歌曲的ID在每個設備上都是相同的)? – smecperson

+0

看,你不能繼續擴大這個問題。我已經回答了這個問題。停止移動目標帖子。無論如何,我不打算在這裏教你整個MPMediaQuery和MPMediaItem!我已經在這裏向您解釋:http://www.apeth.com/iOSBook/ch29.html#_exploring_the_music_library – matt

+0

我沒有擴大這個問題。我總是問如何根據某個字符串來播放某首歌曲。 – smecperson

相關問題