2016-05-13 3 views
2

При настройке бота есть вкладка «Окружающая среда», которая выглядит следующим образом:Как использовать переменные среды Xcode Bot?

env

Я бы ожидать, чтобы иметь возможность получить доступ к этой переменной окружающей среды в моем тесте, как это:

NSString *username = [[NSProcessInfo processInfo] environment][@"accountEmail"]; 

Но это возвращается как ноль. И я могу проверить, что [NSProcessInfo processInfo] заполняется другими данными путем записи его содержимого в консоль.

Я думаю, что это довольно новая функция бота (ни видео в WWDC 2015 года, ни документация Apple даже не упоминают эту вкладку), но кто-нибудь имел успех в доступе к этим переменным среды бота?

ответ

0

Я замечу то же самое. Похоже на ошибку в Xcode Server. Вероятно, вы должны зарегистрировать радар.

В то же время вы можете добавить переменные окружения в схемы. Вы можете сделать несколько схем для разных конфигураций и переключить ту, которую использует ваш Бот. Это не идеально, но он выполняет свою работу.

Build Scheme Run Settings

0

Для того, чтобы получить доступ к переменной среды установки через вкладку «Аргументы» ботом, вы должны сначала объяснить эту переменную в вашей схеме.

В Xcode 9.2, перейдите к Edit схемы ...>Run>Аргументы>переменные окружения и добавить переменную среды ИмяaccountEmail и Value$(accountEmail). Тогда значение, которое вы задали для переменной среды в конфигурации вашего бота, должно быть доступно в коде через (в Swift 4) ProcessInfo.processInfo.environment["accountEmail"].

Смежные вопросы