码迷,mamicode.com
首页 > 移动开发 > 详细

iOS开发之ARC MRC混编

时间:2015-02-11 20:30:58      阅读:6443      评论:0      收藏:0      [点我收藏+]

标签:

Xcode5之后,新建iOS工程,默认都是ARC模式,但是有时候我们的项目中需要用到一些第三方框架,我们下载下来却发现是非ARC的,这时候我们需要进行ARC和MRC混编。

第一种方式,Edit->Refactor,转换成ARC方式

技术分享

著名的iOS网络框架ASIHTTPRequest就是MRC,我们试试能不能转换成ARC

技术分享

点击Check,我们发现悲剧了

技术分享

多数情况下这种方式都会出错,那该怎么办呢?

第二种方式,给编译器加标记

技术分享

可以在Build Phases中的Compile Sources中加入编译标记-fno-objc-arc,确实可行,但是文件好多,这种方式适合文件比较少的情况,文件多了难道我们要一个一个加嘛,这时候我们可以借助一个工具xproj,这是一个脚本,可以很方便的给某个文件夹内的文件添加编译标记,具体使用方法我们看项目主页就行了,既可以给ARC项目添加MRC标记(-fno-objc-arc),也可以给MRC项目添加ARC标记(-fobjc-arc)

第三种方式,打包成静态库

技术分享

将我们将要使用的类拖入工程当中

技术分享

勾选正确的target

技术分享

将原来的类文件删除,只留我们需要的,然后我们将整个项目变为MRC

技术分享

添加头文件

技术分享

技术分享

设置公共头文件

技术分享

运行程序,我们发现静态库已经产生

技术分享

这种方式的缺点就是如果需要改源码,就需要重新打包

最后一种方式,项目引用

新建一个项目,改为非ARC,在另一个项目中引用这个项目

技术分享

我们需要把项目B中的无关文件删除掉

最后一种方式,自己重写成ARC方式

iOS开发之ARC MRC混编

标签:

原文地址:http://www.cnblogs.com/dongwenbo/p/4286766.html

(1)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!