我有自己的静态库,其中包括用于检查 Internet 连接的可达性。
其他开发人员将我的静态库添加到他的(第 3 方项目)中,该库已经具有其他 可达性(Pod 规范中的标签 3.0)
他通过 Cocoa Pods 安装了它。见规格。
如您所见,这是 pod 中的最后一个版本。
好的,项目构建没有错误。
但是我们得到了错误:
+[Reachability reachabilityWithHostName:]: unrecognized selector sent to class 0x2c77fc
我花了很多时间来找出问题所在。
所以 Reachability 2.2 有声明:
+ (Reachability*) reachabilityWithHostName: (NSString*) hostName;
但是,Reachability 3.0 有以下声明:
+(Reachability*)reachabilityWithHostname:(NSString*)hostname;
不一样吗?!编译成功!看看“HostName”......是的,小“n”。当我们检查静态库中的主机可达性时,我们会得到无法识别的选择器。
我的问题是 -避免这个问题的最佳方法是什么?我是否应该强迫其他想要构建我的静态库的开发人员使用 Apple 的 Reachability 或其他东西?
谢谢