2012-01-02 45 views
10

当我创建我的项目时,我使它支持ARC,所以我的项目将支持iOS 4.3及更高版本。在启用ARC的项目中使用非ARC代码 - 添加Facebook

现在我需要整合Twitter和Facebook。公司给出的Facebook和Twitter框架都不支持ARC

大部分文件都有dealloc,并且发布了它的变量。有人说要废弃这个项目,并重新启用它,禁用ARC。但是,我不能这样做,因为我已经完成了大部分的工作。

我添加了FBConnect文件(其中有4个文件)并添加了-fno-objc-arc,如this tutorial中所述。我仍然得到

file://localhost/Users/illepmorgan/Documents/Projects/illep/untitled%20folder/alphaproject/alphaproject/FBRequest.m: error: Automatic Reference Counting Issue: Existing ivar '_delegate' for unsafe_unretained property 'delegate' must be __unsafe_unretained 

我需要帮助,我不能再重做一遍。

+0

你确定你正确地按照指导?仔细检查您是否已将标志添加到所有文件。 – Emil 2012-01-02 14:27:20

+0

是的,我做到了。我再次尝试了一遍。我收到了上面添加的那条消息。 – Illep 2012-01-02 14:29:03

+0

有没有人知道如何解决这个问题? – Illep 2012-01-02 15:38:43

回答

20

确保已将-fno-objc-arc标志添加到每个实现文件(.m文件)。

然后清理项目(项目菜单 - >清理)并重新构建。在课堂上做这件事时,我有时不得不打扫两次。看起来像一个小错误。

+0

您还必须添加JSON文件(位于文件夹中)。那么我还必须为这些文件添加标志吗? JSON文件在'target'中没有标识以添加标志。我现在应该怎么做 ? – Illep 2012-01-02 22:24:41

+0

JSON文件不是Objective-C代码,您不会编译它们,因此此标志不适用。 – 2012-01-02 22:45:23

+0

好吧,'FBConnect' Facebook框架有一个'JSON'文件夹,当你看到时你会发现很多'Objective-C'代码。那么我也必须“标记”它们吗? – Illep 2012-01-03 14:07:05

相关问题