3

我为我的 xcode 项目创建了四种不同的构建配置,它们是 QA、STAGING< UAT<& PRODUCTION。我为我创建的一个构建使用了 4 个不同的 url。

现在我的问题是 xcode 4 非常擅长检测 DEBUG 模式,因为已经有预定义的宏可用,但是如何检测我的自定义构建,以便我可以为不同的构建配置传递不同的 url?

4

2 回答 2

2

在这些构建配置中的每一个中,进入构建设置并添加 #define THIS_IS_QA=1 然后在您的代码中对其进行测试并像使用 DEBUG 宏一样使用它

于 2012-08-10T14:21:18.293 回答
0

预处理器宏路由工作正常并且可以快速实现。但它不能很好地扩展,因为您最终会得到每个变量的副本。我发现效果最好的路线是执行以下操作。

  1. 在项目或目标构建设置中将配置定义为用户定义的设置。
    • 这样做允许为每个构建配置指定不同的值(例如,调试或发布,甚至是自定义的)
  2. 在项目 plist 文件中创建一个信息属性。
    • 这允许通过 plist 访问构建设置。
  3. 编写一次代码以从 plist 文件中加载值。

例子:

在项目中创建一个名为“BASE_API_URL”的用户定义设置,并将调试配置设置为“ http://www.test.example.com ”,将发布配置设置为“ http://www.example.com ”。

然后在 plist 中创建一个新的信息属性,其键为“BaseAPIUrl”,值为“$(BASE_API_URL)”

最后在定义基本 url 的应用程序委托中添加以下代码:

let baseUrl: NSString = NSBundle.mainBundle().infoDictionary?["BaseAPIUrl"]! as NSString
于 2014-12-24T17:49:05.483 回答