【问题标题】:Check PhotoLibrary if Image is already Exist如果图像已经存在,请检查 PhotoLibrary
【发布时间】:2014-07-14 12:13:49
【问题描述】:

我正在创建应用程序以将图像从网络保存到照片库。现在我想每次在将图像保存到 PhotoLibrary 之前检查该图像是否已经存在?

我获取存储在照片库中的图像名称,但该名称与原始名称不同,所以我不知道如何将当前图像与现有图像进行比较! 请帮帮我!

   ALAssetsLibrary *Library=[[ALAssetsLibrary alloc]init];

   NSMutableArray *arr_ImagesUrl=[[NSMutableArray alloc]init];

   [Library enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos usingBlock:^(ALAssetsGroup *Group,BOOL *stop){

    [Group enumerateAssetsUsingBlock:^(ALAsset *asset,NSUInteger index,BOOL *stop)

     {
         NSLog(@"%@",[[asset defaultRepresentation]filename]);
     }];
} failureBlock:^(NSError *error){NSLog(@"%@",error.description);}];

【问题讨论】:

    标签: ios image


    【解决方案1】:

    据我所知,IOS文档中基本上没有这样的API。

    您可以做的(与您最初想要的不太一样)是在您的应用程序中为用户在整个应用程序生命周期中选择的每个图像存储一个单独的值 (*)。根据这一系列信息,您可以判断新选择是否与以前的选择相同。但是,您仍然不能为完整的 PhotoLibrary 执行此操作。

    (*) 这是一个关于 SO 的有用线程,它关于检测图像相似性和/或创建一个值(散列)来描述图像并可用于稍后比较图像。 我最喜欢的是phash

    https://softwareengineering.stackexchange.com/questions/92830/how-to-know-if-two-images-are-the-same

    或者看到这个: Compare two images to check if they are same

    【讨论】:

    • 谢谢,但我不明白如何实现 pHash 到 xCode?​​span>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-29
    • 1970-01-01
    • 2012-11-18
    • 2018-03-09
    • 1970-01-01
    • 2012-03-01
    • 2014-03-02
    相关资源
    最近更新 更多