我正在尝试将 FBConnect 添加到包含 SBJson 框架的应用程序中。但是,当我尝试编译项目时,出现以下两个错误:
Duplicate interface definition for class 'SBJsonWriter'
Duplicate interface definition for class 'SBJsonParser'
我能做些什么来解决这个错误?谢谢你的帮助。
删除
#import FacebookSDK/FacebookSDK.h
在你的项目中
我开始使用 FacebookSDK,但后来我对它的当前状态感到失望并尝试使用旧的“FBConnect”,这就是我得到错误的原因
有两种可能:
你有两个同名的接口。使用 Xcode 的 find in project 菜单选项来查找 SBJsonWriter 的实例。然后以某种方式重命名其中一个接口,您已经设法两次导入 .h 文件。检查以确保您始终使用#import 而不是#include。
关于#import/#include 的更多信息:
// some_file.h
#if !defined SOME_FILE_H
#define SOME_FILE_H
// entire content of #include file
#endif
上面的他有时被称为包含保护宏。
在 Objective-C 中,如果你 #import 一个文件,编译器会执行检查以确保它尚未被导入。因此,防护装置通常被省略。因此,如果您#include 一个应该是#imported 的文件,则不会进行任何检查,并且您有时会得到重复的定义。