ios - 类别冲突 : instance method in category from conflicts with same method from another category

标签 ios objective-c xcode objective-c-category opentok

据我所知,有两种情况会导致以下错误:

ld: warning: instance method 'resetAudioSystem' in category from /opentok-ios-sdk/Opentok.framework/Opentok(OTPublisher+AudioSnoop.o) conflicts with same method from another category
ld: warning: instance method 'attachAudioSnoopBlock:' in category from /opentok-ios-sdk/Opentok.framework/Opentok(OTPublisher+AudioSnoop.o) conflicts with same method from another category
ld: warning: instance method 'setVideoSnoopDelegate:' in category from /opentok-ios-sdk/Opentok.framework/Opentok(OTPublisher+VideoSnoop.o) conflicts with same method from another category

可能性 1: 类别实例方法被声明了两次。 (此处描述:SO)

但是,当我搜索 3 个实例方法中的任何一个(在 Xcode 或 Grep 中)时,我没有发现它被声明了两次。

可能性 2: 意外导入 .m 文件。 (此处描述:SO)

但是,我检查了所有的导入,并且在整个项目中我只导入了一次框架。此外,只在构建阶段出现一次。

我的程序运行没有崩溃,大概是因为使用了最后添加的类别定义并且它恰好是正确的。 ( Source )

问题 1:有没有办法在添加之前告诉这两个类别位于何处?

问题 2:关于如何解决这个问题还有其他想法吗?

注意:Opentok 框架是二进制的

发生在:

xcode 4.6 & xcode 5

iOS6 和 iOS7

最佳答案

我有这个警告是因为我不小心导入了一个类别的实现文件而不是它的头文件。所以:

错误:#import 'MyClass+MyCategory.m'

右: #import 'MyClass+MyCategory.h'

关于ios - 类别冲突 : instance method in category from conflicts with same method from another category,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19921675/

相关文章:

ios - 如何在后台获取通知和数据同步

ios - 每当输入文本时应用程序崩溃,无法识别的选择器发送到实例

html - 在 iOS 7 或 8 的网页 View 中使用不同的样式表

objective-c - 如何访问父 View ?

iphone - 如何在我的应用程序启动后立即自动播放音乐?

ios - SpriteKit : detect overlap of rotated nodes?

ios - 弹出 View 2时如何恢复计时器

ios - SwiftSoup cocoapods 只安装并且只安装版本 1.4,而不是 1.5

objective-c - 使用摄像头检测心率

ios - theos - 未知类型名称