Как различить несколько целей с Xcode 4.2 - PullRequest
10 голосов
/ 13 января 2012

Я разработал облегченную версию приложения. Теперь я хочу создать платную версию. Итак, я продублировал цель, изменил ее имя (так что измените plist и другие вещи с этим именем), и теперь я должен различать код. Я использую Xcode 4.2 и вижу в сети, что мне нужно создать флаг препроцессора. Моя проблема в том, что этот флаг в Xcode 4.2 присутствует только в настройке сборки проекта, а не в настройке сборки цели.

Мне нужно будет сделать что-то вроде этого:

#ifdef paid
    ...
#else
    ...
#endif

1 Ответ

18 голосов
/ 13 января 2012

Используйте макросы препроцессора, чтобы сделать это. Перейдите в Target -> Build Setting и выберите «Все конфигурации» (это очень важно). Далее найдите поле «Макросы препроцессора».

В этом поле добавьте флаг в ex. PAID_VERSION. Теперь вы можете использовать этот флаг в коде:

#ifdef PAID_VERSION
    NSLog(@"Paid version");
#else
    NSLog(@"Lite version");
#endif
...