正如标题所述,做一个比另一个有什么好处?
使用资产:
MPMediaItem *song = [self.itemCollection objectAtIndex:self.currentIndex];
NSURL *songURL = [song valueForProperty:MPMediaItemPropertyAssetURL];
AVAsset *asset = [AVURLAsset URLAssetWithURL:songURL options:nil];
AVPlayerItem *item = [AVPlayerItem playerItemWithAsset:asset];
[self.myPlayer replaceCurrentItemWithPlayerItem:item];
使用网址:
MPMediaItem *song = [self.itemCollection objectAtIndex:self.currentIndex];
NSURL *songURL = [song valueForProperty:MPMediaItemPropertyAssetURL];
AVPlayerItem *item = [AVPlayerItem playerItemWithURL:songURL];
[self.myPlayer replaceCurrentItemWithPlayerItem:item];
更新
是的,经过一些游戏后我发现了以下内容:
使用前一种方法(资产)时,远程控制事件存在一个问题: 1.锁定屏幕并等待播放下一首歌曲。 2.下一首歌曲开始后,双击主页按钮调出控件。 3.点击暂停:没有任何反应。 4.再次点击暂停:音乐暂停。
现在远程控制事件实际上没有问题,因为它是在第一次尝试时调用的。它暂停了不起作用的音乐(即[self.myPlayer pause]
) - 直到你再试一次。
不知道为什么会这样,但这是我使用URL方法的原因。