ios - 尝试在 Swift 项目中使用 Objective C cocoa pod,桥接文件编译为 Swift 代码

标签 ios swift xcode bridging-header

我正在尝试在基于 Swift 的 iOS 项目中使用基于 objective C 的 cocoa pod (GCM)。我安装了 cocoa pod ,并手动创建了一个桥接文件,将其作为桥接文件添加到构建首选项中。问题是当我编译时,bridge.h 文件被编译为 Swift(显然它应该是 objective-c )。更明确地说,included.h 文件中的所有行都在抛出错误,而不是 bridg 文件本身。这是我的桥接文件

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

#endif /* bridge_h */

知道出了什么问题以及为什么导入的代码没有被视为 Objective C 吗?

最佳答案

在一位同事的帮助下,我们弄明白了——桥接文件必须包含 Foundation/Foundation.h,并且必须在包含其他任何内容之前这样做。否则无法编译。

关于ios - 尝试在 Swift 项目中使用 Objective C cocoa pod,桥接文件编译为 Swift 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39967493/

相关文章:

ios - Peek 和 Pop - 将 UIImageView 的角半径保持在 UITableViewCell 内的 UICollectionView 内

objective-c - cellForRowAtIndexPath - [indexPath row] 滚动时返回奇怪的数字

ios - 无法使用 PFQuery Table ViewController (Swift 2) 显示自定义单元格

iphone - 未找到 TapkuLibrary.h 和 <TapkuLibrary> - 词法和预处理器问题

ios - 如何在 NSMutableArray 中快速将对象添加为 NSMutableArray

swift - 在 Swift 中继承泛型类失败

ios - 如何在特定持续时间内将 Google map iOS (Swift) 中的标记从坐标 A 动画到 B

ios - 在pubspec.yaml中添加Google Maps软件包后,Flutter的iOS应用将无法构建

ios - 进入后台时 Alamofire 请求卡住了?

ios - 从 get 方法获取数据后 reloadData 不起作用