我想.xcconfig为我的 Xcode 项目使用相同的文件,以便我在所有项目中自动拥有相同的警告设置。我很想创建例如一个Cocoapod我包含的Podfile,然后将配置文件复制到我的 Xcode 项目中或从我的 Xcode 项目中引用它们。
有没有办法做到这一点?
要求
据我了解,您的要求是:
潜在的解决方案
据我所知,不可能从 Cocoapod 运行脚本来操作包含 Xcode 项目。幸运的是,来自 Cocoapods 的人提供了一个名为xcodeproj的 Ruby gem来操作 Xcode 项目和工作区,包括构建设置。
我一直在使用这个 gem 来开发一个工具(phoenx)来自动生成基于元数据文件(很像 Podfiles)的 Xcode 项目和工作区。我已将相关代码部分提取到一个名为xcconfig的新 ruby gem 中。
Xcconfig
Xcconfig 可以下载和配置任何 Xcode 项目文件上的 xcconfig 文件。AConfigfile指定配置文件的来源(可选)以及如何将这些 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
您可以将此 gem 与 cocoapods 集成或单独使用。如果你想尝试一下,你可以安装它,sudo gem install xcconfig然后xcconfig在你的项目目录中运行Configfile. 源代码可在我的 GitHub 帐户上找到。
希望有帮助。
您可以创建一个自定义项目模板,并将一个以___FILEBASENAME___.xcconfig所需设置命名的文件放入您的.xctemplate包中。然后您可以在创建新项目时选择此模板,它将自动具有您指定的默认设置。