我有一个带有两个目标的应用,精简版/目标内部有google admob广告。
现在,我使用下面的代码进行处理。

//App_Prefix.pch
#define _lite


在appDelegate中

// AppDelegate.m
#ifdef _lite

@import GoogleMobileAds;
#endif
@implementation  AppDelegate


编译项目时是否可以检测到TARGET。
以下代码可以检测目标,

  //-------------detect target
  #define _lite [ [[[NSProcessInfo processInfo]environment]objectForKey:@"TARGET"] isEqualToString:@"lite"]


但不适合之前的部分

@implementation


欢迎您发表评论

最佳答案

选项1

使用可以为每个目标定义Preprocessor Macros


转到项目设置
选择目标
Build Settings中转到Preprocessor Macros
为所有配置(例如调试/发布)添加宏,例如APP_TARGET_A

ios - 编译项目时是否可以检测到TARGET-LMLPHP
对所有其他目标执行相同的操作


现在,您可以像在.pch文件中定义的宏一样使用它。

#define APP_TARGET_A
@implementation
#endif


选项2

每个目标可以有不同的.pch文件。复制.pch文件(例如Target_A_Prefix.pch Target_B_Prefix.pch)并将其添加到项目中(取消选中所有目标)。

在“构建设置”中,转到Prefix Header并将每个配置的路径设置为.pch。对所有目标执行相同的操作。

ios - 编译项目时是否可以检测到TARGET-LMLPHP

关于ios - 编译项目时是否可以检测到TARGET,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48444892/

10-14 20:01
查看更多