0

我已经从

http://mobile.tutsplus.com/tutorials/iphone/mediaplayer-framework_mpmovieplayercontroller_ios4/

并且该应用程序运行良好,但是当我尝试通过更改以下代码来换出自己的视频时:

pathForResource:@"big-buck-bunny-clip" ofType:@"m4v"

pathForResource:@"example" ofType:@"mp4"

当我尝试播放视频时应用程序崩溃,并且我在输出中收到一条消息:

“2012-09-13 20:32:59.106 BigBuckBunny [1081:11f03] * 由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'-[NSURL initFileURLWithPath:]: nil string parameter' * * First throw call stack: (0x1722022 0x10f6cd6 0x16caa48 0x16ca9b9 0x4e53b 0x4e4c5 0x2da4 0x1723e99 0x36d14e 0x36d0e6 0x413ade 0x413fa7 0x413266 0x3923c0 0x3925e6 0x378dc4 0x36c634 0x1e1aef5 0x16f6195 0x165aff2 0x16598da 0x1658d84 0x1658c9b 0x1e197d8 0x1e1988a 0x36a626 0x297d 0x28f5) terminate called抛出异常(lldb)“

我在包含原始 big-buck-bunny-clip.m4v 文件的文件夹中有我的新视频文件,并将其放入项目中。我做错了什么,我该如何解决这个问题?

4

2 回答 2

1

我设法通过转到 Xcode 中的文件并选中 Target Membership 下 BigBuckBunny 旁边的框来播放我自己的视频

于 2012-09-14T06:07:00.380 回答
0

检查文件退出和您传递的文件路径为零:

 NSString *filepath   =   [[NSBundle mainBundle] pathForResource:@"example" ofType:@"mp4"];  
 if([[NSFileManager defaultManager] fileExitsAtPath:filepath])
 {
   NSURL    *fileURL    =   [NSURL fileURLWithPath:filepath];   
   MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];  
   [self.view addSubview:moviePlayerController.view];  
   moviePlayerController.fullscreen = YES;  
   [moviePlayerController play];    
 }
 else
 {
    NSLog(@"File not exists");
 }
于 2012-09-14T03:49:18.943 回答