我目前正在尝试首次使用xcconfig文件,以便更轻松地使用项目中的配置文件。我正在构建Development.xcconfig
,Beta.xcconfig
和AppStore.xcconfig
。
上下文
我需要能够从命令行构建我的应用程序。
我的应用还有一个今日扩展程序,其中包含不同的应用ID和配置文件。所以,我需要找到一种方法来指定两个配置文件。
xcconfig文件允许在项目中设置全局配置文件,这很棒。
但是,他们不容易在目标依赖项(即扩展名)中设置配置文件。
我想避免在扩展程序的构建设置中指向一个特殊标记(例如$(MY_EXTENSION_PROVISIONING_PROFILE)
),因为只要有人编辑了扩展程序的配置文件,就会覆盖它。 (所以,解决方案here是不够的)
如何在xcconfig文件中包含所有这些设置?如果那是不可能的,那么在项目之外指定这些供应配置文件的替代解决方案是什么?
答案 0 :(得分:0)
您绝对可以为包含.xcconfig文件的应用扩展程序设置配置文件或任何其他构建设置。您只需为应用扩展程序创建单独的.xcconfig文件。
为您的应用扩展程序创建单独的.xcconfig文件,每个文件对应一个开发,测试版和App Store配置。在那里定义扩展应用ID和配置文件:
PROVISIONING_PROFILE_SPECIFIER = your profile specifier
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.TodayExtension
PRODUCT_NAME = Today Extension
然后,在“项目”设置中,设置与每个方案对应的.xcconfig文件。此处显示的示例是我的应用程序 - DevAppNew是一个应用程序目标,NotificationService是一个应用程序扩展目标。您同样会为Today分机添加一个单独的目标:
在命令行的构建时,指定您要构建的方案,它将使用您配置的.xcconfig文件:
xcodebuild -workspace YourApp.xcworkspace -scheme Testing