所以我在我的程序中有这个奇怪的错误,我有一个在电影之间随机播放的QTMovieView,这很完美。在程序的另一部分,您可以录制稍后在视频随机播放器中显示的一些视频。这是我可以遇到问题的地方。
有时像75%的时间,当视频会尝试分配其中一个新视频时,它会返回null。但是,如果我重新启动我的程序,显示这些视频没有问题。
由于视频文件位于正确的位置,因此调用完全相同,它认为只有在录制后才有效,并且总是在我重新启动应用程序时。
下面的代码是我用来加载我的视频的代码,fileName是正确的,并且该文件存在于其查找的位置。它重新启动程序后总是有效。但在录制新视频后并不总是直接。
我从中获得的错误是Error Domain=NSOSStatusErrorDomain Code=-50 "The operation couldn’t be completed. (OSStatus error -50.)" (error in user parameter list)
NSString *moviePath = [NSBundle pathForResource:fileName ofType:@"mov" inDirectory:@"/Users/Shared/Real/Movies"];
QTMovie *movie = [[QTMovie alloc] initWithFile:moviePath error:nil];
NSLog(@"fil att leta efter: %@",fileName); //the right filename
NSLog(@"vald film resultat: %@",movie); // Turns out (null) if the file is recorded in the same session
答案 0 :(得分:0)
好的解决了,问题是NSBundle没有找到写入文件夹的新文件。不知道它为什么没有,但确实用NSString* stringMoviePath = [NSString stringWithFormat:@"/Users/Shared/Real/Movies/%@.mov",fileName];
取而代之,现在一切都好了