我的pod文件如下所示:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'RestKit'
pod 'CocoaLumberjack'
在我的App代表之上,我添加了:
#import <RestKit/RestKit.h>
在应用程序中:didFinishLaunchingWithOptions:我添加了这个:
RKObjectMapping *mapping = [RKObjectMapping mappingForClass:[NSString class]];
到目前为止它编译得很好,然后我补充道:
AFHTTPClient* client = [[AFHTTPClient alloc] initWithBaseURL:[[NSURL alloc] initWithString:@"asdf"]];
再次,工作正常,然后我尝试了可达性:
[client setReachabilityStatusChangeBlock: ^(AFNetworkReachabilityStatus status)
{
NSLog(@"Reachability status changed");
}];
不幸的是,这无法编译并出现以下错误:
'AFHTTPClient'没有可见的@interface声明选择器 'setReachabilityStatusChangeBlock:'
我去检查为什么会这样,并且发现这个方法的编译由_SYSTEMCONFIGURATION_H
宏保护,在这种情况下由于某种原因解析为假。
我试图将我的项目与SystemConfiguration框架链接,但它没有帮助。我的假设是RestKit应该在编译时与它链接,当我检查RestKit pod时,SystemConfiguration确实存在于Link Binary with Libraries阶段。任何想法为什么这不起作用?
Xcode7b5,cocoapods 0.38.2 可以找到示例项目here。