我有一个项目,它使用SocketRocket有一个依赖项(通过CoCoPapods安装),并从HeapanAnalytics导入了一个静态库.显然,HealpanAnalytics图书馆已经在使用SocketRocket了.我在编译时没有收到错误,但在运行时收到以下信息:

Class SRWebSocket is implemented in both [path] and [path].
One of the two will be used. Which one is undefined.

我不知道如何处理它,因为我见过的大多数解决方案都需要自己编译静态库,更改类名等等,而且我没有访问源代码的权限.

有什么建议吗?

推荐答案

我写了那个错误信息!•

要么更改类名,要么不链接所述库.

你的项目是如何配置的?是否有任何地方明确链接到SR?或者它是针对两个已经包含SR的静态库进行链接的产物?

如果是前者,则停止直接针对SR的链接,只继承已经使用它的库附带的版本(警告:确保它有正确的版本).

如果是后者,则必须修改其中一个库.

•实际上,我修改了错误.它曾暗示会使用其中一种.但事实并非如此,不同平台的行为也不同.因此,对其进行了修改,以便更准确地确定行为是未定义的.

Objective-c相关问答推荐

如何测试 NSCFBolean 值?

自构建预编译头后文件已被修改

如何声明仅调试语句

当我从导航控制器推送时如何隐藏导航栏?

在Objective C中迭代枚举?

从 Storyboard 实例化视图控制器与创建新实例

以编程方式调用情节提要场景(无需转场)?

额外的 75 秒从何而来?

使用 NSMutableArray 的二维数组

iOS 6 Facebook 发布过程以remote_app_id 与存储的 id 不匹配结束

UIWebView 不会zoom 内容以适应

在 Objective-C/cocoa 中创建文件夹/目录

WKWebView 判断 JavaScript 返回值

如何在 Objective-C 中创建一个空白的透明 png?

UITextField:键盘出现 timeshift 动视图

仅在 UIView 顶部的圆角

如何修复UIPopoverController 已弃用警告?

判断文件是否存在于路径中

iOS 7 中的 UITextView 链接检测

Objective-C:如何向 NSURL 添加查询参数?