swift xcode播放播放列表中的声音文件

我正在寻找播放列表中播放声音的快速编码,而不是作为资源添加到您的项目中的声音。 我主要find了NSURL(fileURLWithPath:NSBundle.mainBundle()。pathForResource(“sound_name”,ofType:“wav”))println(alertSound)的用法,但是为此你需要在你的包中包含声音文件。 但我找不到任何示例select通过iTunes购买的audio文件,并播放它们。

任何想法如何做到这一点? 我可以访问我的音乐层播放列表文件,并在我的应用程序中使用它们吗?

感谢任何代码行。 RPW

这些音乐文件由MPMediaItem实例表示。 要获取它们,您可以使用MPMediaQuery ,如下所示:

let mediaItems = MPMediaQuery.songsQuery().items 

此时,您已将所有歌曲包含在音乐应用程序库中,因此您可以在设置播放列表队列后使用MPMusicPlayerController播放它们:

 let mediaCollection = MPMediaItemCollection(items: mediaItems) let player = MPMusicPlayerController.iPodMusicPlayer() player.setQueueWithItemCollection(mediaCollection) player.play() 

您可能需要按stream派,艺术家,专辑等过滤歌曲。 在这种情况下,您应该在获取媒体项目之前将谓词应用于查询:

 var query = MPMediaQuery.songsQuery() let predicateByGenre = MPMediaPropertyPredicate(value: "Rock", forProperty: MPMediaItemPropertyGenre) query.filterPredicates = NSSet(object: predicateByGenre) let mediaCollection = MPMediaItemCollection(items: query.items) let player = MPMusicPlayerController.iPodMusicPlayer() player.setQueueWithItemCollection(mediaCollection) player.play() 

干杯!