Автоматически использовать разные константы для развития - PullRequest
4 голосов
/ 12 сентября 2011

Мое приложение iOS использует определенный сервер для производства: http://mydomain.com/serverapi. При разработке я хотел бы изменить это на http://localhost/serverapi. Какой элегантный способ сказать XCode использовать локальный URL по умолчанию.

Очевидно, что очень важно, чтобы рабочий выпуск содержал рабочий URL (Архивация в XCode.

Другим вариантом использования может быть изменение значка или идентификатора приложения во время разработки, чтобы иметь возможность отличать приложение от версии, которая может быть уже установлена ​​на устройстве.

Ответы [ 2 ]

6 голосов
/ 12 сентября 2011

Я использую макросы для этого (как предложил Пабло), но если у вас есть отдельный файл Info.plist для разных конфигураций сборки (как я), то вы можете иметь собственную запись в вашем Info.plist и обращаться к ней, как так:

 [[[NSBundle mainBundle] infoDictionary] objectForKey:@"MyAppURL"]

Однако макросы, вероятно, быстрее во время выполнения, поскольку они компилируются. Это просто еще один вариант.

Ниже приведено изображение настройки проекта.

enter image description here

4 голосов
/ 12 сентября 2011

Вы можете использовать C язык MACROS.

Как это:

#ifdef DEBUG
#define URL @"http://localhost/serverapi"
#else
#define URL @"http://mydomain.com/serverapi"
#endif

Затем в вашем коде вы просто используете определенную константу:

NSLog(@"Hello, my current url is %@", URL);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...