如何在运行时区分xcode中的多个目标

时间:2017-05-09 11:39:07

标签: ios xcode target

使用旧的Objective c应用程序,我需要创建多个目标。问题是我如何区分代码中的多个目标运行时间,因此我需要从bundle加载资源。

2 个答案:

答案 0 :(得分:1)

项目>构建设置>预处理器宏

为不同的目标定义不同的宏,例如:

  • TARGET_1
  • TARGET_2

并且在代码中你可以像这样区分它:

NSString *pathToMyResource = nil;

#ifdef TARGET_1
  pathToMyResource = @"pathToMyResourceForTarget1";
#else
  pathToMyResource = @"pathToMyResourceForTarget2";
#endif

编辑:添加了快速语法

#if DEBUG
  let apiKey = "KEY_A"
#else
  let apiKey = "KEY_B"
#endif

见这里:Swift 3: how to use PREPROCESSOR Flags (like `#if DEBUG`) to implement API keys?

答案 1 :(得分:1)

您可以使用@ matloob的答案。以下是另一种方法。

您还可以使用预处理来区分目标。

请查看以下教程。这也可以帮到你。

参考: Target Differentiation dynamically - Appcoda