У меня есть три API с разными API Keys и несколько разных настроек
-
Для разработки или сборки внутреннего тестирования - Распространение разработки вне iOS App Store
-
Host- devapi.project-name.com -
API Key-API Keyразработки -
FLEX[ 1 ] - Включить
-
-
Для клиентского тестирования сборки - корпоративное распространение за пределами iOS App Store
-
Host- stgapi.project-name.com -
API Key- enterprise_key -
FLEX- Включить
-
-
Для производственной сборки - распространение в iOS App Store
-
Host- API.project-name.com -
API key- app_store_key -
FLEX- отключить
-
Я могу управлять двумя настройками с помощью 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
Или любой другой?
Вторая проблема
Есть ли способ создать три сборки с разными именами без создания другой цели?
-
ProductName- для магазина приложений -
ProductName-Dev- для внутренней разработки build -
ProductName-Stg- для сборки клиентского тестирования (Enterprise)
Я только что создал демонстрационный проект и полное визуальное руководство на основе решения от iamnichols











