xcconfig文件的作用是解耦工程的配置文件,将工程配置键值对抽取出来,存放在文件中单独管理。笔者最近开始使用google的j2objc工具,需要在工程中配置工具的路径,用xcconfig文件存储该路径的好处就显而易见了,在svn忽略文件中忽略这个文件,那么团队中多台设备同步代码的时候就不用每次都去更改j2objc的路径了。
至于如何使用xcconfig文件,网上挺多教程的,这里我就简单过一下流程,在后面着重介绍一些可能出现的坑的处理。
1.创建xcconfig文件
如下图所示,分别创建两个xcconfig文件,其中一个作为debug、一个作为release配置。
图一 图二2.配置xcconfig到工程中
依次操作选择You Project -> Info -> Configurations
,如下图所示,在Debug
和Release
选项中分别选择Settings.debug
和Settings.relesase
。
3.在xcconfig配置文件中设置键值对
依次在release和debug中设置好键值对以后,可以在Target -> You Project -> Build Settings -> User-Defined
中看到结果,如图所示
4.可能遇到的坑
由于有部分第三方框架会自己生成.xcconfig文件,并且设置到工程中,如上面图三,例如CocoaPod,如果我们把其中的配置文件更改为我们的配置文件的话,那么CocoaPod就没法使用,在执行pod install
之后会报错如下图
CocoaPod推荐两种解决方式
- 删除图三中我们自己选择的配置文件,重新
pod install
. - 在自己的配置文件中
include
CocoaPod的配置文件,include
的路径如图六所示(虽然看起来很奇怪).
在这里我们只能选择后者,所在我们的xcconfig文件中include
相应的CocoaPod配置文件即可。
网友评论