前语:在我们写
Swift
的项目中,经常会用CocoaPods
引进一些Objective-C
的第三方库。但是Objective-C并不能直接导入。故这篇博客诞生了。
问题:这些第三方库的头文件并不能直接引证导入,如何处理?
计划:使用Objective-C桥接头文件(Objective-C Bridging Header)
- 第一步,请求一个.h文件。
注意命名规则为
TargetName-Bridging-Header
。

- 第二步,挑选 Targets -> Build Settings -> 挑选all并搜索header。

- 第三步,填写桥接头文件(Objective-C Bridging Header)的相对路径。

#ifndef Qi_MAMapDemo_Bridging_Header_h
#define Qi_MAMapDemo_Bridging_Header_h
#import <MAMapKit/MAMapKit.h>
#import <AMapFoundationKit/AMapFoundationKit.h>
#endif /* Qi_MAMapDemo_Bridging_Header_h */
- 完成,现在已经能够在项目中使用这些第三方库了。
Q:可能有同学会问这和
.pch
文件有什么区别? A:猜测Swift底层做了很多优化,会判别当前文件是否用到某些头文件,再定向导入。不必担心性能问题。与pch不同,Swift的头文件导入显得更加智能。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。