2016-10-10 64 views
1

我想在基于Swift的iOS项目中使用基于目标C的可可豆荚(GCM)。我安装了可可豆荚,并且手动创建了一个桥接文件,并将其作为桥接文件添加到生成首选项中。问题是,当我编译时,bridge.h文件被编译为Swift(当然,它应该是客观的C)。更明确地说 - included.h文件中的所有行都会引发错误,而不是bridg文件本身。这是我的桥文件试图在Swift项目中使用Objective C可可豆荚,编译为Swift代码的桥接文件

#ifndef bridge_h 
#define bridge_h 
#import <GoogleCloudMessaging.h> 

#endif /* bridge_h */ 

任何想法什么错误,为什么要导入的代码不被视为目标C?

回答

0

当您选择文件时,您可以检查并更改文件检查器中的文件类型。看看它是否是objective-c头文件。

+0

我想到了这一点,但它实际上并不是一种选择。只有标题选项是C头(默认和我正在使用的)。 objective-c选项是源代码和预编译的源代码。两者都不起作用。 –

1

在同事的帮助下,我们发现桥接文件必须包含Foundation/Foundation.h,并且必须在包含其他任何东西之前完成。否则它无法编译。

相关问题