3

xcode プロジェクトに 4 つの異なるビルド構成を作成しました。それらは QA、STAGING<UAT<&PRODUCTION です。作成した 1 つのビルドに対して、それぞれ 4 つの異なる URL を使用します。

ここで私の質問は、xcode 4 は DEBUG モードの検出に非常に優れているということです。これは、既に定義済みのマクロが利用可能であるためです。ただし、ビルド構成ごとに異なる URL を渡すことができるように、カスタム ビルドを検出するにはどうすればよいですか?

4

2 に答える 2

2

これらのビルド構成のそれぞれで、ビルド設定に入り、 #define THIS_IS_QA=1 を追加してから、コードでテストし、DEBUG マクロを使用する場合と同じように使用します

于 2012-08-10T14:21:18.293 に答える
0

プリプロセッサ マクロ ルートは正常に機能し、すぐに実装できます。ただし、各変数のコピーが作成されるため、スケーリングはうまくいきません。私が最もうまくいくと思うルートは、次のことです。

  1. プロジェクトまたはターゲットのビルド設定で、構成をユーザー定義設定として定義します。
    • これを行うと、ビルド構成ごとに異なる値を指定できます (例: Debug または Release またはカスタムのもの)。
  2. プロジェクトの plist ファイルに情報プロパティを作成します。
    • これにより、plist を介してビルド設定にアクセスできます。
  3. コードを 1 回記述して、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 に答える