我正在尝试使用设备iPod库中的歌曲内容初始化AVPlayer。我在根控制器的viewDidLoad中有以下代码(将其解压缩到测试应用程序中以隔离它)。
MPMediaQuery* query = [MPMediaQuery songsQuery];
MPMediaItem* firstItem = [query.items objectAtIndex:0];
NSURL* url = [firstItem valueForKey:MPMediaItemPropertyAssetURL];
AVPlayerItem* playerItem = [[AVPlayerItem alloc] initWithURL:url];
self.player = [[AVPlayer alloc] initWithPlayerItem:playerItem];
[self.player play];
代码总是在我调用firstItem上的valueForKey的行中抛出以下异常,以获取资产URL。:
*由于未捕获的异常'NSUnknownKeyException'而终止应用程序,原因:'[valueForUndefinedKey:]:此类不是密钥assetsURL的密钥值编码兼容。 * 首先抛出调用堆栈:
代码对我来说非常简单,不知道我在这里可能会缺少什么,任何帮助都会很棒。这是iPhone 4S上的iOS 5.1。尝试启用iTunes Match和只有本地音乐的设备,结果相同。