**
解决方案01:仅将现有的GIF文件保存到相机胶卷
**
据我理解,您可以生成一个GIF文件,但无法将其保存并查看到相机胶卷。
因此,我附上了一个使用现有GIF文件的样本测试。
步骤01:我在我的应用程序文档目录中复制了一个gif IMG_0009.GIF文件。
步骤02:然后我使用下面的代码来加载这些文件的NSData:
NSURL *documentsDirectoryURL = [[NSFileManager defaultManager] URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:YES error:nil]
NSURL *fileURL = [documentsDirectoryURL URLByAppendingPathComponent:@"IMG_0009.gif"]
NSData *gifData = [NSData dataWithContentsOfFile:[fileURL path]]
步骤 03:现在我将文件保存在媒体目录中:
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library writeImageDataToSavedPhotosAlbum:gifData metadata:nil completionBlock:^(NSURL *assetURL, NSError *error) {
NSLog(@"Success at %@", [assetURL path] );
}];
Asset URL正确,现在您可以检查媒体目录并定位已保存的GIF图像。
玩得开心:)
**
解决方案02:创建和保存GIF到相机胶卷的演示
我克隆了一些解决方案来展示如何创建和保存GIF文件到相机胶卷。
您可以下载并查看我的Github分支:
该演示通过拍摄2个或多个图像创建GIF文件,并将其保存在相机胶卷目录中。
https://github.com/bllakjakk/Giraffe
主要代码如下:
[export encodeToFile:tempFile callback:^(NSString * aFile) {
NSLog(@"Path: %@", aFile);
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
NSData *data = [NSData dataWithContentsOfURL:[[NSURL alloc]initFileURLWithPath:aFile]];
[library writeImageDataToSavedPhotosAlbum:data metadata:nil completionBlock:^(NSURL *assetURL, NSError *error) {
NSLog(@"Success at %@", [assetURL path] );
}];
}];
它使用我之前在解决方案中提到的库 http://jitsik.com/wordpress/?p=208
如何验证:
步骤01:运行演示项目。
步骤02:按应用程序的指示添加2个图像并单击导出。
步骤03:现在检查相机胶卷,您将找到创建的gif。
以前:
GIF是一种专有格式,所以您需要第三方库来保存它。
请查看以下链接:http://jitsik.com/wordpress/?p=208