0

Web からビデオをダウンロードし、そのファイルをローカル フォルダーに書き込みたいと考えています。私はこれのために次のコードを実行しました:

     if(videoUrl!=Nil)
        {
            if(moviePlayer==NULL)
            {

                NSString *newPath = @"/Users/theuser/Desktop/data/b.m3u8";
                NSData *videoData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"]];
                NSLog(@"data=%@",videoData);
                [videoData writeToFile:newPath atomically:YES];
            }

        }

同じアプリケーションでビデオを取得しています。そのための次のコードがあります。

- (void)viewDidLoad
{
    [super viewDidLoad];
   // NSString *directory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
    NSString *newPath = @"/Users/theuser/Desktop/data/b.m3u8";//[directory stringByAppendingPathComponent:@"myMovie.m3u8"];
    NSLog(@"path=%@",newPath);
    moviePlayerController=[[MPMoviePlayerController alloc]initWithContentURL:[NSURL fileURLWithPath:newPath isDirectory:NO]];
    moviePlayerController.scalingMode=MPMovieScalingModeAspectFill;
    moviePlayerController.view.frame=CGRectMake(320,200,320,200);
    [self.view addSubview:moviePlayerController.view];
    [moviePlayerController play];
    NSLog(@"played");

}

しかし、私は次の例外を受けています:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'An AVPlayerItem cannot be associated with more than one instance of AVPlayer'

なぜこれが起こっているのですか?

4

0 に答える 0