将图像保存在 iOS 相册(我的文件夹)中并存储图像 url

Posted

技术标签:

【中文标题】将图像保存在 iOS 相册(我的文件夹)中并存储图像 url【英文标题】:Saving image in iOS photo album(my folder) and have the image url stored 【发布时间】:2015-03-12 09:12:18 【问题描述】:

我想将图像(从服务器下载)保存在 ios 设备相册中,并将该图像相册 url 存储在本地数据库中。我的问题是,保存图片后如何获取相册图片网址?

我可以使用以下 ALAsset 代码将图像保存在相册中:但是,我还需要将此 url 图像存储在我的本地数据库中。所以下一次,我不会从服务器下载相同的图像,我可以直接从设备相册加载。

[self.maAssetsLibrary saveImage:image
                          toAlbum:@"My-Album"
                       completion:completion
                          failure:nil];

请提出建议。

更新: 我试过了,但保存图片后没有给我相册图片网址。

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^

    // The completion block to be executed after image taking action process done
    void (^completion)(NSURL *, NSError *) = ^(NSURL *assetURL, NSError *error) 
    ;

    [self.maAssetsLibrary saveImage:image toAlbum:@"My-Album" completion:^(NSURL *assetURL, NSError *error)
        if (error) 
            NSLog(@"error");
         else 
            NSLog(@"url %@", assetURL);
        
     failure:^(NSError *error) 

    ];

);

【问题讨论】:

iPhone: How do I get the file path of an image saved with UIImageWriteToSavedPhotosAlbum()?的可能重复 我认为您无法访问相册中图像的 URL。但是,您可以将其保存在应用程序的文件夹(如文档)中,使用该 URL 同时将其保存到相册中。 我不建议这样做。 iOS 相册是供应用程序使用的。在用户不告诉这样做之前,您不应该将图像保存在相册中。如果您想保存图像以加快加载速度,则应使用图像缓存。如果您想为更长的用户保存它,您应该手动保存在数据容器(应用程序文件系统)中。 @LordZsolt:可以获取照片的asset url 嗨 Midhun,我遇到的另一个问题是,我需要将此图像保存在 My-Album 文件夹中。如果我使用 writeImageToSavedPhotosAlbum,如何将图像存储在 My-Album 文件夹中?有什么帮助吗? 【参考方案1】:

由于沙盒,您无法获得这样的网址。正如@Lord Zsolt 在评论中建议的那样,您可以通过将图像保存在应用程序的文件夹中来克服这个问题。在这种情况下,您可能会例如给他们一个名字,作为识别每张图片的关键。

编辑

正如@MidhunMP 评论的那样,我错了!有一种方法(我现在很高兴知道),它来自@CRDave 在上面的评论中提供的Stack Overflow answer。

重点是使用ALAssetsLibrarywriteImageToSavedPhotosAlbum:orientation:completionBlock:方法。

学习总是很好。

【讨论】:

这个答案是错误的,我们可以获取图片的asset url,并可以使用该asset url加载图片。 @MidhunMP 你能告诉我怎么做吗?我会是第一个感兴趣的。 检查 CRDave 添加的链接作为问题下方的评论。通过这种方式你可以得到网址 嗨 Midhun,我遇到的另一个问题是,我需要将此图像保存在 My-Album 文件夹中。如果我使用 writeImageToSavedPhotosAlbum,如何将图像存储在 My-Album 文件夹中?有什么帮助吗? @Stella:检查这个帖子,你会在这里得到答案:***.com/questions/11972185/… 和这里:***.com/questions/10954380/…

以上是关于将图像保存在 iOS 相册(我的文件夹)中并存储图像 url的主要内容,如果未能解决你的问题,请参考以下文章

在ios5的自定义相册中保存多个图像但不在相机胶卷中?

如何在 iOS 中将照片保存在特定相册中

ios怎么把webm保存到相册

保存自定义相机捕获图像 iOS Xcode

将图像保存到特定相册,但限制保存到相机胶卷文件夹

如何使用 angularjs 从 url 下载(保存)图像到我们的相册中?