【发布时间】:2014-05-14 23:23:41
【问题描述】:
这两个库是 AFNetworking 和 libcomScore.a。
在 AFHttpClient.h 中,extern NSString * const AFNetworkingReachabilityDidChangeNotification;
在 AFHttpClient.m 中,NSString * const AFNetworkingReachabilityDidChangeNotification = @"***";
在 comScore 静态库的某个类中,AFNetworkingReachabilityDidChangeNotification 被重新定义,导致错误
重复符号 _AFNetworkingReachabilityDidChangeNotification 在: comScore-iOS-ARMV7_ARMV7S_ARM64-2.1403.14/comScore-iOS-ARMV7_ARMV7S_ARM64-2.1403.14/comScore/libcomScore.a(CSReachabilityManager.o) /Users/apple/lib***.a(AFHTTPClient.o)
我不想接触 AFNetworking 中的代码(尽管我可以通过重命名 const 轻松修复它。) 那么有人知道吗?
【问题讨论】:
-
你是对的。我认为外部库使用
AFNetworking,尝试通过从设置中取消选中所有.m 类来删除原始AFNetworking,并尝试从库本身导入AFNetworking。或者,由于您无法更改库中的任何内容,因此请在外部进行更改。 -
我使用 lipo 检查 libcomScore.a 的内部,结果发现它没有使用任何 AFnetworking 相关文件。所以我想知道这个库是否定义了一些在 AFNetworking 库中恰好具有相同名称(AFNetworkingReachabilityDidChangeNotification)的常量值。我把它重命名为AFNetworkingReachabilityDidChangeNotification111,链接错误消失了,但是更改AFNetworking代码不是我想要的。
-
您找到解决方案了吗?我也有同样的问题。
-
@MartaRodriguez 我联系了 SDK 提供商,让他们更改代码...原来他们从 AFNetworking 复制了一些代码,并没有重命名一些变量。
-
太棒了!让我们看看他们是否很快会发布新版本。谢谢@njuxjy!!
标签: ios iphone afnetworking