[iOS][Swift]cocoapods,-Bridging-

作者: pingpong_龘 | 来源:发表于2015-12-10 00:04 被阅读10268次

刚入手swift,感觉还不错,语法比较轻盈,准备下个app就用swift了

1.上来一个cocoapods就卡住了...

swift想用cocoapods,需要一个XXX-Bridging-Header.h 文件

这个文件,在你新建一个oc文件的时候,xcode自动提醒你是否创建,如果不想创建,

后面也可以自己建一个.h文件,命名按照这个格式就可以

2.然后,这是第一步,第二步,在xxx-Bridging-Header里面import你需要的pod文件就可以

#import "AFNetworking.h"

但是系统总是提示 AFNetworking.h file not found

类似这样(截图用UIView+Toast举例):

好,关键来了:

(参考:http://www.cnblogs.com/zuopeng/p/4299465.html)

1.历经过程

尝试第一步:

a> 系统build setting下面Objective-C Bridging Header路径要设置正确:

不要在project里面设置,而是在target里面设置

(千万不要反过来!!! 不要反过来!!!反过来的话,顶多head文件编译过,真正代码用起来还是会错误:use of undeclared type…)

Notes:设置之后,如果提示Header.h not exist ,说明路径不对,看下绝对路径和相对路径设置的对不对

添加路径的截图如下:

b> 如果上面还不行,然后我的解决方案就是:

直接在swift文件里

import AFNetworking

然后 build success!!!

2.总结

Notes: 说明下原因,各种错误提示的本质是找不到路径,所以千思万绪都要往这个方面去想

其实bridging header是swift刚出的时候,官方提供的一种适配oc文件的方式,大家对于cocoapods就是这么用的,但是cocoapods 从0.38之后的版本开始,支持swift 了,当你在安装pods的时候,添加下面这句话就可以了

# Uncomment this line if you're using Swift
use_frameworks!

这样就不用a> 方法了,是不是很开心…

这里之所以写a> 方法,是因为自己是这么一步步走过来的,这个问题纠结了我好半天,主要是不知道问题在哪里,现在解决了甚是舒心!!

相关文章

网友评论

  • 咔客:<unknown>:0: error: bridging header '/Users/xiaoxiaoduan/Desktop/swift/cocoapodsSwift/Header.h' does not exist

    文件说找不到 是怎么回事
    阳光下de奔跑:路径错误呗
  • 4296f56dc19f:为什么我添加了# Uncomment this line if you're using Swift
    use_frameworks!
    然而并没有什么作用啊,还是得做桥接文件啊
  • 小草先生:swift 引用swift第三方需要每个控制器都引入头文件? 引用OC第三方可以用桥接文件,如果报错可以在 User Header Search Path 配置${SRCROOT} recursive
  • 风吹柳絮如花落:Swift中使用CocoaPods加载SnapKit,需要导入头文件?拖拽进来的就不用导入
  • 琪一可:你好 我想问一下 为什么我在swift项目里面引入用pod进工程的三方的时候, 提示我找不到文件。? 谢谢
  • LinkStart:我的还是不成功>_<
  • 不必luo嗦:我在模拟器上能运行,但用真机测试就提示说bridgingheader没有导入成功,为什么啊

本文标题:[iOS][Swift]cocoapods,-Bridging-

本文链接:https://www.haomeiwen.com/subject/qmfyhttx.html