Objective c 为什么未找到报告SDWebImageManager defaultCachePathForKey的编译器?

Objective c 为什么未找到报告SDWebImageManager defaultCachePathForKey的编译器?,objective-c,xcode,compiler-warnings,sdwebimage,Objective C,Xcode,Compiler Warnings,Sdwebimage,我看到编译器在以下代码中警告“未找到实例方法-cacheKeyForURL”和“未找到实例方法-defaultCachePathForKey”: SDWebImageManager *manager = [SDWebImageManager sharedManager]; NSString *cacheKey = [manager cacheKeyForURL:[NSURL URLWithString:imageUrl]]; NSString *cachePath = [[manager ima

我看到编译器在以下代码中警告“未找到实例方法-cacheKeyForURL”和“未找到实例方法-defaultCachePathForKey”:

SDWebImageManager *manager = [SDWebImageManager sharedManager];
NSString *cacheKey = [manager cacheKeyForURL:[NSURL URLWithString:imageUrl]];
NSString *cachePath = [[manager imageCache] defaultCachePathForKey:cacheKey];

但显然,这些方法是有定义的。例如,这里是:

在代码文件的顶部,我包含了SDWebImage项目中的相关文件:

#import <SDWebImage/UIImageView+WebCache.h>
#import <SDWebImage/SDImageCache.h>
#import <SDWebImage/SDWebImageManager.h>
#导入
#进口
#进口
此外,
SDWebImageManager.h
中的
sharedImageManager
,编译器在查找它时没有问题。我只有第二行和第三行的警告

我的代码运行良好,这些方法都可以正常工作,不会崩溃。为什么编译器告诉我它找不到它

我正在运行XCode 6,仅为活动体系结构编译,iPhone6模拟器

更新

当我为发行版编译“所有架构”时,它突然发现
cacheKeyForURL
defaultCachePathForKey
,没问题,但是
setImageWithURL
现在不推荐了吗


我确实看到了,但我只是非常困惑,当SDWebImage的头文件似乎没有任何特定于它们的体系结构时,为什么为这些不同的体系结构构建会打开/关闭各种编译器警告。

我通过更仔细地检查“报告导航器”(neé)中的错误发现了这一点

事实证明,在它选择链接的“派生数据”文件夹中有一些非常旧的SDWebImageManager.h文件。不清楚他们为什么不清理我的项目。(可能与我通过Cocoapods从子模块迁移到包含SDWebImage有关?)


我需要导航到我的DerivedData文件夹,然后手动删除项目的子文件夹。这样做之后,项目现在成功构建,没有虚假警告

您使用的是哪个版本的
SDWebImage
?在新版本中,有一个
sd\u setImageWithURL
。因此,您可以确认这一点。你可以用这个linkhttps://github.com/rs/SDWebImageVersion 3.7.1,根据Podfile.lock
#import <SDWebImage/UIImageView+WebCache.h>
#import <SDWebImage/SDImageCache.h>
#import <SDWebImage/SDWebImageManager.h>