私は異なる設定といくつかの異なる設定API
を持つ3つを持っていますAPI Keys
開発用または内部テスト用ビルド- iOS App Store 外での開発配布
Host
- devapi.プロジェクト名.comAPI Key
- 開発キーFLEX
[ 1 ] - 有効にする
クライアント テスト ビルドの場合- iOS App Store 外のエンタープライズ配布
Host
- stgapi.プロジェクト名.comAPI Key
- エンタープライズキーFLEX
- 有効
プロダクション ビルドの場合- iOS App Store での配布
Host
- API.プロジェクト名.comAPI key
- app_store_keyFLEX
- 無効にする
を使用して2つの設定を管理できますDEBUG
#if DEBUG
#define API_BASE_URL @"http://devapi.project-name.com/api/v1"
#define API_KEY @"development_key"
#else
#define API_BASE_URL @"http://stgapi.project-name.com/api/v1"
#define API_KEY @"enterprise_key"
#endif
// In AppDelegate.m
#if DEBUG
[[FLEXManager sharedManager] showExplorer];
#endif
しかし、最初の問題は、Enterprise ディストリビューション (クライアント テスト用) と iOS App Store ディストリビューション (プロダクション) のビルドです。Enterprise および App Store ディストリビューションでは、毎回コードを変更する必要があります。
エンタープライズ配布用
#if DEBUG //debug setting #else //enterprise setting #define API_BASE_URL @"http://stgapi.project-name.com/api/v1" #define API_KEY @"enterprise_key" #endif
App Store 配布用
#if DEBUG //debug setting #else //app store setting #define API_BASE_URL @"http://api.project-name.com/api/v1" #define API_KEY @"app_store_key" #endif
私はこのような方法を探しています
#ifdef DEVELOPMENT
#define API_BASE_URL @"http://devapi.project-name.com/api/v1"
#define API_KEY @"development_key"
#elif ENTERPRISE
#define API_BASE_URL @"http://stgapi.project-name.com/api/v1"
#define API_KEY @"enterprise_key"
#elif APP_STORE
#define API_BASE_URL @"http://api.project-name.com/api/v1"
#define API_KEY @"app_store_key"
#endif
それとも他の?
2番目の問題
異なるターゲットを作成せずに、異なる名前で 3 つのビルドを作成する方法はありますか?
ProductName
- App Storeの場合ProductName-Dev
- 内部開発ビルド用ProductName-Stg
- クライアント テスト (エンタープライズ) ビルド用
iamnicholsが提供するソリューションに基づいて、デモ プロジェクトと完全なビジュアル ガイドを作成しました。