Xcode:自动添加xcconfig文件

时间:2016-07-05 10:54:32

标签: ios xcode xcconfig

我想为我的Xcode项目使用相同的.xcconfig文件,以便我在所有项目中自动拥有相同的警告设置。我很想创造,例如我通过Cocoapod添加Podfile,然后将配置文件复制或从我的Xcode项目中引用它们。

有没有办法实现这个目标?

2 个答案:

答案 0 :(得分:1)

<强>要求

据我所知,您的要求是:

  • 下载xcconfig文件,例如Cocoapods,GitHub
  • 在Xcodeproj上为项目和目标级别的每个配置设置xcconfig文件

潜在解决方案

据我所知,从Cocoapod运行脚本来操作包含Xcode项目是不可能的。幸运的是,来自Cocoapods的人提供了一个名为xcodeproj的Ruby gem来操作Xcode项目和工作区,包括构建设置。

我一直在使用这个gem开发一个工具(phoenx)来自动生成基于元数据文件的Xcode项目和工作区(很像Podfiles)。我已将相关的代码部分提取到名为xcconfig的新ruby gem中。

<强> Xcconfig

Xcconfig可以在任何Xcode项目文件上下载和配置xcconfig文件。 Configfile指定配置文件的来源(可选)以及如何将这些xcconfig文件应用于项目。如果文件不是项目的一部分,它将添加它们(与子文件夹的组一起)并相应地配置项目。如果更改全局存储库中的xcconfig文件,则只需再次运行xcconfig即可同步存储库。

Configfile应与您xcodeproj文件位于同一文件夹中(就像Podfile一样)。

# Specify where to download the config files (optional)
source "git@github.com:xyz/Configuration"

# Specify the name of the project, e.g., MyProject if your project file is MyProject.xcodeproj
Project.new "MyProject" do |project|

    # Specify xcconfig files for each configuration on project level (paths are relative t
    project.config_files["Release"] = "Configuration/project_release.xcconfig"
    project.config_files["Debug"] = "Configuration/project_debug.xcconfig"

    # Specify target and xcconfig files for each configuration
    project.target "test" do |target|

        target.config_files["Debug"] = "Configuration/debug.xcconfig"

    end

end

您可以将此宝石与cocoapods集成或单独使用。如果您想尝试一下,可以使用sudo gem install xcconfig进行安装,然后使用xcconfig在项目目录中运行Configfile。我的GitHub帐户可以使用sources

希望有所帮助。

答案 1 :(得分:0)

您可以create a custom project template并在Equatable捆绑包中放置一个名为___FILEBASENAME___.xcconfig的文件,其中包含所需的设置。然后,您可以在创建新项目时选择此模板,它将自动具有您指定的默认设置。