在方案中设置构建变量而不是目标
Posted
技术标签:
【中文标题】在方案中设置构建变量而不是目标【英文标题】:Set build variable in scheme instead of target 【发布时间】:2017-11-07 18:16:35 【问题描述】:我目前正在开发一个 XCode 中的 ios 项目,该项目使用配置来指定我的应用程序可以连接到的不同 API 环境。此外,我使用目标来覆盖我的项目配置的用户定义值之一,以指定要在应用程序中使用的特定配置文件。但是,这是目标中唯一更改的值。我使用多个不同的配置文件(一次可能 10 到 20 个)并为每个文件创建一个新目标以更新一个值似乎很笨重。
我的问题:有没有办法从方案中传递这个值而不是在目标中设置它?
我看到有一个可以运行的预构建脚本,但我还没有成功导出环境变量。
CONFIG_FILE="My Config File"
export CONFIG_FILE
我还看到一些people have had success using PlistBuddy 在方案的预构建阶段将值写入 info.plist 文件。这也可能是一种选择,尽管它需要我重做很多构建过程。在走这条路之前,我想看看是否还有其他选择。
感谢您的帮助。
【问题讨论】:
【参考方案1】:我能够通过使用在我的方案中的预构建操作期间更新的 .xcconfig 文件来做到这一点。
我通过本教程学习了如何设置项目:http://www.jontolof.com/cocoa/using-xcconfig-files-for-you-xcode-project/
【讨论】:
以上是关于在方案中设置构建变量而不是目标的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift 3.0 中设置 Alamofire 自定义目标文件名而不是使用建议的DownloadDestination
如何在 Visual Studio 6 中设置自定义构建步骤?