この呼び出し内にもう1つ条件を追加する必要がありますStaging ..
この状態でそれを行う方法。
#ifdef MYAPP_PRODUCTION
buildMode = @"Production";
#else
#ifdef MYAPP_RELEASE
buildMode = @"Release";
#else MYAPP_DEBUG
buildMode = @"Debug";
#endif
#endif
もう1つはMyApp_Staging
このif条件にこれを行う方法を含める必要がありますか?
このような方法で、新しいステージングモードを含むすべての異なるオプションを含め、ステートメント全体をよりクリーンにすることができます。
#ifdef MYAPP_PRODUCTION
buildMode = @"Production";
#Elif MYAPP_RELEASE
buildMode = @"Release";
#Elif MYAPP_DEBUG
buildMode = @"Debug";
#Elif MYAPP_STAGING
buildMode = @"Staging";
#endif
あなたの質問はあまり明確ではありません... #ifdefに複数の条件が必要な場合は、ここに解決策があります:
#if defined(MYAPP_RELEASE) && defined(MyApp_Staging)
// ...
#else
// ...
#endif
SwiftおよびXcode 7では、構文が変更されています。
#if DEBUG || RELEASE
let URL = "https://www.example.com/beta"
#elseif APPSTORE
let URL = "https://www.example.com/prod"
#endif
これはどうですか?
#if defined(MYAPP_PRODUCTION)
buildMode = @"Production";
#Elif defined(MYAPP_RELEASE)
buildMode = @"Release";
#Elif defined(MYAPP_DEBUG)
buildMode = @"Debug";
//#Elif defined(MYAPP_STAGING)
#else
buildMode = @"Staging";
#endif
2つのビルドターゲットで条件を無効にする場合は、次のように使用します。
#if !(TOWNTALK || EPISD)