在我们iOS开发过程中,碰到的大部分文件都是基于ARC内存管理的,但也免不了用到一些三方的MRC的代码,这里介绍两种方法来编写包括MRC文件的.podspec文件.
1).在podspec中指定requires_arc:false,同时指定requires_arc的文件,eg:
s.requires_arc = false
s.requires_arc = ['ELDiagnosis/Classes/ARC/**/*.m']
上述写法的好处是别的项目拉取到你pod源码的时候,不会多出来一个包含MRC文件的文件夹,看起来代码比较完整;
2).requires_arc:true,然后通过subspec来指定MRC文件,eg:
#默认true,该行可不写
s.requires_arc = true
non_arc_files = 'ELDiagnosis/Classes/ELIM/Classes/FrameWork/Model/*.{h,m}'
s.exclude_files = non_arc_files
s.subspec 'no-arc' do |sp|
sp.source_files = non_arc_files
sp.requires_arc = false
end
第二种方法的缺点就是其它工程拉取到源代码会多出来一个包含MRC文件的文件夹.官方推荐第一种方法.