当我尝试从我的ipod库中选择一个项目时,有些项目会播放,有些则不会。 查看我的日志,一些项目对于assetURL有一个NULL。 为什么会这样?
答案 0 :(得分:0)
所有项目都受DRM保护,返回null assetURL。您无法访问此类商品
答案 1 :(得分:0)
我想为此添加一些东西。我知道为什么assetURL
为空
isCloudItem
将返回true)。这意味着使用MediaPlayer框架的任何非Apple应用程序可能会遇到一些在音乐中播放但无法在应用程序中播放的媒体项目。您的最终用户通常可以“修复”#34;通过删除音乐中的违规音轨并再次下载来解决此问题。
我发现如果我下载完整的专辑并看到这个问题,那么再次下载相册(删除后)会导致一些不同的曲目出现问题,所以这不是一个好方法。
我已为此输入了Apple错误报告(21477730)。我还使用DTS来要求解决方法:没有。如果你也遇到这个问题,那么我也会#34;到错误报告。这可能会增加修复的可能性。
如果您想亲自尝试一下,下面是我发送错误报告的代码。
MPMediaQuery *allAlbumsQuery = [MPMediaQuery albumsQuery];
NSArray *allAlbumsArray = [allAlbumsQuery collections];
for (MPMediaItemCollection *collection in allAlbumsArray)
{
NSArray* items = collection.items;
MPMediaItem* rep = collection.representativeItem;
NSString* name = rep.albumTitle;
for(MPMediaItem* item in items)
{
NSURL* url = item.assetURL;
BOOL isCloudItem = item.isCloudItem;
if(!isCloudItem && (url==nil))
{
NSString* albumTitle = item.albumTitle;
NSString* trackTitle = item.title;
NSLog(@"****Nil: %@ %@",albumTitle,trackTitle);
}
}
}