iOS 8 - 将MOV文件保存到相机胶卷

时间:2015-01-21 23:04:41

标签: ios objective-c xcode

我正在尝试将MOV文件保存到存储在我的应用程序的Documents目录中的Camera Roll。在iOS 7中,我会像这样使用ALAssetsLibrary来导出我的视频:

  NSString *URL = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/%@.mov", _recFinalName]];
  NSURL *fileURL = [NSURL fileURLWithPath:URL];
  ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
    [library writeVideoAtPathToSavedPhotosAlbum:fileURL
                                completionBlock:^(NSURL *assetURL, NSError *error) {}];

但是,此方法在iOS 8上不起作用。我知道您必须使用照片框架。但我迷失了如何实际使用它来保存我的视频文件。我无法找到有关此主题的任何信息。

更新(1/22/15)

我今天早些时候在iPhone 5上测试了我原来的方法。我在iPhone 6上运行iOS 8.2 beta 4.因此它必须与硬件或软件有关。

2 个答案:

答案 0 :(得分:1)

几乎一样简单的是,某些设备要求它采用MP4格式,并且它根本不会保存在MOV中。更改输出文件类型或在保存到MP4后更改它。保存到相机胶卷现在应该可以使用了!

答案 1 :(得分:0)

你可以试试这个

if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (filePath))
{
   UISaveVideoAtPathToSavedPhotosAlbum (filePath,self,@selector(video:didFinishSavingWithError:contextInfo:), nil);
}

其中filePath是要保存到相机胶卷的影片文件的路径。 浏览apple docs以获得进一步的帮助。

感谢。