AVPlayer只能在模拟器中播放

时间:2012-08-17 20:41:45

标签: iphone objective-c avplayer

我正在使用NSURLConnection下载MP3文件,并使用NSFileHandle将数据保存到文件中。每当下载一定百分比的文件(所有文件的大小大致相同)时,我都会开始播放MP3文件。

我认为我可以使用AVPlayer来执行此操作,但它不能在设备上运行 - 只能在模拟器中使用。

我执行以下操作:

if (self.player.rate == 0.0f && percentage > kMinimumDownloadPercentage)
{
    NSError *error;
    self.player = [AVPlayer playerWithURL:[[NSURL alloc] initFileURLWithPath:localPath]];
    if (!error)
        [self.player play];
    else
        NSLog(@"%@", error);
}

这适用于模拟器,但不适用于设备。没有错误。但是,如果我执行以下操作,它确实有效:

self.player = [AVPlayer playerWithURL:url];

其中url是MP3文件的远程URL。

有谁知道为什么我不能使用AVPlayer播放本地文件?

1 个答案:

答案 0 :(得分:1)

由于文件的保存方式,这是一个错误。

-playerWithURL:中的

AVPlayer 完全正常