一直没有足够的动力写一篇博客,尤其是在如此的深夜,安静的夜给我安静的大脑…其实我要说的是这是我第一篇正式技术博客,时间:深夜. 最近项目要求使用到 cordova实现 JS 和 Native的通信,于是我要集成 cordova到一个纯 OC写的项目中,具体什么是 cordova,怎么集成,有兴趣的可以自行百度或谷歌,在这就不多啰嗦了,为什么?看标题.
集成静态库
一般集成静态库的步骤很简单
1.将要集成的库文件拖入项目
2. link Binary中添加关联
当然这是最理想的静态库,也是我们最想要的步骤 ,但是这种情况很少.多数情况下我们都需要在 Build Setting的 Other link flag 中添加 -ObjC (注意是大写的 C,如果用小写的时候又时候是不灵的),-all_load, -force_load 等等 flag,如图
走到这一步也算差不多了,运行一下试试,如图
我擦,这是什么鬼,其实我一开始遇到的错误比这个要壮观的多,当时我就傻了,提示有8个重复引用,(8 duplicate),10+个 not found,网上搜索一下,答案都很直接,重复引用的需要经过自行筛选留下一个(stackoverflow如是说),not found的文件要从 search path移除,就是这些鬼
于是我一个个找到移除了,确实 warning少多了,这个问题就算暂时解决了吧,但是更大的问题是重复引用的,因为那几个第三方静态库的文件都不可以删,项目中都要引用的,删除任何一个都是不